Project

General

Profile

webdav+sqlite locks/props

Added by Evgeniy over 14 years ago

Good day!

I've faced the following problem: lighty provides webdav on my PC, but when I try to enable "webdav.sqlite-db-name = path_to_db" in my config file lighty crashes on startup with [ OK ] message and no error log events.
Without that string it works smooth (at least I can connect, authenticate and sometimes create and delete files to this folder from windows and linux machines).

OS: fedora 10 i386
Lighttpd: 1.4.23 (ssl) - First I've installed it using yum, but when I tried "lighttpd -V" it showed that there is no sqlite support. Then I recompile it from source with --with-sqlite, now it reports Sqlite support.

Config file:

# lighttpd configuration file
#
# use it as a base for lighttpd 1.0.0 and above
#
# $Id: lighttpd.conf,v 1.7 2004/11/03 22:26:05 weigon Exp $

############ Options you really have to take care of ####################

## modules to load
# at least mod_access and mod_accesslog should be loaded
# all other module should only be loaded if really neccesary
# - saves some time
# - saves memory
server.modules              = (
                               "mod_rewrite",
                "mod_webdav",
                               "mod_redirect",
                               "mod_alias",
                                "mod_access",
#                               "mod_cml",
#                               "mod_trigger_b4_dl",
                               "mod_auth",
#                               "mod_status",
#                               "mod_setenv",
                               "mod_fastcgi",
                               "mod_proxy",
                               "mod_simple_vhost",
#                               "mod_evhost",
#                               "mod_userdir",
#                               "mod_cgi",
#                               "mod_compress",
#                               "mod_ssi",
#                               "mod_usertrack",
#                               "mod_expire",
#                               "mod_secdownload",
#                               "mod_rrdtool",
                                "mod_accesslog" )

## a static document-root, for virtual-hosting take look at the
## server.virtual-* options
server.document-root        = "/var/www/lighttpd/" 

## where to send error-messages to
server.errorlog             = "/var/log/lighttpd/error.log" 

# files to check for if .../ is requested
index-file.names            = ( "index.php", "index.html",
                                "index.htm", "default.htm" )

#### accesslog module
accesslog.filename          = "/var/log/lighttpd/access.log" 

## deny access the file-extensions
#
# ~    is for backupfiles from vi, emacs, joe, ...
# .inc is often used for code includes which should in general not be part
#      of the document-root
url.access-deny             = ( "~", ".inc" )

$HTTP["url"] =~ "\.pdf$" {
  server.range-requests = "disable" 
}

##
# which extensions should not be handle via static-file transfer
#
# .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )

## to help the rc.scripts
server.pid-file            = "/var/run/lighttpd.pid" 

###### virtual hosts
##
##  If you want name-based virtual hosting add the next three settings and load
##  mod_simple_vhost
##
## document-root =
##   virtual-server-root + virtual-server-default-host + virtual-server-docroot
## or
##   virtual-server-root + http-host + virtual-server-docroot
##
simple-vhost.server-root   = "/var/www/lighttpd/" 
simple-vhost.default-host  = "mysite.address.com" 
simple-vhost.document-root = "" 

## change uid to <uid> (default: don't care)
server.username            = "lighttpd" 

## change uid to <uid> (default: don't care)
server.groupname           = "lighttpd" 

#### fastcgi module
## read fastcgi.txt for more info
## for PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini
fastcgi.server             = ( ".php" =>
                               ( "localhost" =>
                                 (
                                   "socket" => "/var/run/lighttpd/php-fastcgi.socket",
                                   "bin-path" => "/usr/bin/php-cgi" 
                                 )
                               )
                            )

#### auth module
## read authentication.txt for more info
auth.backend               = "htpasswd" 
auth.backend.htpasswd.userfile = "lighttpd_htpasswd.user" 

$HTTP["host"] =~ "(^|\.)webdav\.mysite\.address\.com$" {

server.document-root = "/var/www/lighttpd/webdav.mysite.address.com/" 
server.errorlog = "/var/log/lighttpd/webdav.mysite.address.com/error.log" 
accesslog.filename = "/var/log/lighttpd/webdav.mysite.address.com/access.log" 
server.error-handler-404 = "/404.php" 

dir-listing.activate = "enable" 

webdav.activate = "enable" 
webdav.is-readonly = "disable" 
#webdav.sqlite-db-name = "/var/run/lighttpd/lighttpd.webdav_lock.db" 

auth.backend = "htpasswd" 
auth.backend.htpasswd.userfile = "/etc/lighttpd/lighttpd_htpasswd.user" 
auth.require = ( "" =>("method"  => "basic",
            "realm"   => "webdav",
            "require" => "valid-user" ) )
}


Actually I've syplified config a bit - excluded commented lines, and mime types. Lighty serves sever additional web sites using simple vhost.

I have even made a symlink for /usr/bin/sqlite pointing to existing /usr/bin/sqlite3

That's it.


Replies (1)

RE: webdav+sqlite locks/props - Added by Evgeniy over 14 years ago

Did anyone have any similiar troubles?

    (1-1/1)