server.error-handler-404 on a subfolder
Added by eryretqwewrqr over 9 years ago
Hello everyone,
When my 404 is at domain.com/*_here_* his dynamic contents shows, but it became static with more depth like domain.com/*_here_*/*_here_*.
LightTPD 1.4.28-1 (Win32)
Windows Server 2003 SP2
Chrome 32.0.1700.76 m and IE 8
lighttpd-inc.conf:
@# LightTPD Configuration file (INCLUDE) #- Use it as a base for LightTPD 1.0.0 and above.
- This version is built for WLMP Webserver Package - http://en.wlmp.project.net/ #
- $Id: lighttpd-inc.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_access",
"mod_accesslog",
"mod_alias", - "mod_auth",
- "mod_cgi",
- "mod_cml",
- "mod_compress",
- "mod_dirlisting",
- "mod_evasive",
- "mod_evhost",
- "mod_expire",
- "mod_extforward",
- "mod_fastcgi",
- "mod_flv_streaming",
- "mod_indexfile",
- "mod_magnet",
- "mod_mysql_vhost",
- "mod_proxy",
"mod_redirect", - "mod_rewrite",
- "mod_rrdtool",
- "mod_scgi",
- "mod_secdownload",
- "mod_setenv",
- "mod_simple_vhost",
"mod_ssi", - "mod_staticfile",
"mod_status",- "mod_trigger_b4_dl",
- "mod_userdir",
- "mod_usertrack",
- "mod_webdav"
)
- a static document-root, for virtual-hosting take look at the
- server.virtual-* options
server.document-root = "HTDOCS/"
#directory for file uploads
server.upload-dirs = ( "TMP/" )
- files to check for if .../ is requested
index-file.names = ( "index.php", "index.pl", "index.cgi",
"index.html", "index.htm", "default.htm" )
- set the event-handler (read the performance section in the manual)
- server.event-handler = "freebsd-kqueue" # needed on OS X
- mimetype mapping
mimetype.assign = (
".pdf" => "application/pdf",
".sig" => "application/pgp-signature",
".spl" => "application/futuresplash",
".class" => "application/octet-stream",
".ps" => "application/postscript",
".torrent" => "application/x-bittorrent",
".dvi" => "application/x-dvi",
".gz" => "application/x-gzip",
".pac" => "application/x-ns-proxy-autoconfig",
".swf" => "application/x-shockwave-flash",
".tar.gz" => "application/x-tgz",
".tgz" => "application/x-tgz",
".tar" => "application/x-tar",
".zip" => "application/zip",
".mp3" => "audio/mpeg",
".m3u" => "audio/x-mpegurl",
".wma" => "audio/x-ms-wma",
".wax" => "audio/x-ms-wax",
".ogg" => "application/ogg",
".wav" => "audio/x-wav",
".gif" => "image/gif",
".jpg" => "image/jpeg",
".jpeg" => "image/jpeg",
".png" => "image/png",
".xbm" => "image/x-xbitmap",
".xpm" => "image/x-xpixmap",
".xwd" => "image/x-xwindowdump",
".css" => "text/css",
".html" => "text/html",
".htm" => "text/html",
".js" => "text/javascript",
".asc" => "text/plain",
".c" => "text/plain",
".cpp" => "text/plain",
".log" => "text/plain",
".conf" => "text/plain",
".text" => "text/plain",
".txt" => "text/plain",
".dtd" => "text/xml",
".xml" => "text/xml",
".mpeg" => "video/mpeg",
".mpg" => "video/mpeg",
".mov" => "video/quicktime",
".qt" => "video/quicktime",
".avi" => "video/x-msvideo",
".asf" => "video/x-ms-asf",
".asx" => "video/x-ms-asf",
".wmv" => "video/x-ms-wmv",
".bz2" => "application/x-bzip",
".tbz" => "application/x-bzip-compressed-tar",
".tar.bz2" => "application/x-bzip-compressed-tar"
)
- Use the "Content-Type" extended attribute to obtain mime type if possible
mimetype.use-xattr = "enable"
- 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", ".cgi" )
- Options that are good to be but not neccesary to be changed #######
- bind to port (default: 80)
server.port = 8181
- bind to localhost (default: all interfaces)
#server.bind = "mydomain.org"
- error-handler for status 404
server.error-handler-404 = "/error-handler.html"
#server.error-handler-404 = "/error-handler.php"
- 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 = "HTDOCS/"
#simple-vhost.default-host = "vhost.mydomain.org"
#simple-vhost.document-root = "/vhost/"
- alias
#alias.url = ( "/logs" => "logs" )
- Format: <errorfile-prefix><status-code>.html
> ..../status-404.html for 'File not found'"
#server.errorfile-prefix = "htdocs/errors/status
- virtual directory listings
dir-listing.activate = "enable"
#dir-listing.encoding = "iso-8859-2"
#dir-listing.external-css = "style/oldstyle.css"
- enable debugging
#debug.log-request-header = "enable"
#debug.log-response-header = "enable"
#debug.log-request-handling = "enable"
#debug.log-file-not-found = "enable"
- only root can use these options #
- chroot() to directory (default: no chroot() )
#server.chroot = "/"
- change uid to <uid> (default: don't care)
#server.username = "wwwrun"
- change uid to <uid> (default: don't care)
#server.groupname = "wwwrun"
- compress module
#compress.cache-dir = "tmp/"
#compress.filetype = ("text/plain", "text/html")
- proxy module
- read proxy.txt for more info
#proxy.server = ( ".php" =>
- ( "localhost" =>
- (
- "host" => "192.168.0.101",
- "port" => 80
- )
- )
- )
- 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" => "TMP/php-fastcgi.socket",
- "bin-path" => "PHP/php-cgi.exe"
- )
- )
- )
- CGI module
#cgi.assign = ( ".php" => "PHP/php-cgi.exe",
- ".pl" => "Perl/perl.exe",
- ".cgi" => "Perl/perl.exe" ) #
- SSL engine
#ssl.engine = "enable"
#ssl.pemfile = "server.pem"
- status module
status.status-url = "/server-status"
status.config-url = "/server-config"
- auth module
- read authentication.txt for more info
#auth.backend = "plain"
#auth.backend.plain.userfile = "conf/lighttpd-auth.conf"
#auth.backend.plain.groupfile = "conf/lighttpd-group.conf"
#auth.backend.ldap.hostname = "localhost"
#auth.backend.ldap.base-dn = "dc=my-domain,dc=com"
#auth.backend.ldap.filter = "(uid=$)"
- (
- "method" => "digest",
- "realm" => "Server status",
- "require" => "user=admin"
- ),
- "/server-config" =>
- (
- "method" => "digest",
- "realm" => "Server config",
- "require" => "user=admin"
- )
- )
- url handling modules (rewrite, redirect, access)
#url.rewrite = ( "^/$" => "/server-status" )
#url.redirect = ( "^/wishlist/(.+)" => "http://www.123.org/$1" )
- both rewrite/redirect support back reference to regex conditional using %n
#$HTTP["host"] =~ "^www\.(.*)" {
- url.redirect = ( "^/(.*)" => "http://%1/$1" )
#}
$HTTP["host"] =~ "^([^.]+\.[^.]+)$" {
url.redirect = (
".*" => "http://www.%1"
)
}
- define a pattern for the host url finding
- %% => % sign
- %0 => domain name + tld
- %1 => tld
- %2 => domain name without tld
- %3 => subdomain 1 name
- %4 => subdomain 2 name
#
#evhost.path-pattern = "HTDOCS/"
- expire module
#expire.url = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes")
- ssi
#ssi.extension = ( ".shtml" )
- rrdtool
#rrdtool.binary = "rrdtool"
#rrdtool.db-name = "lighttpd.rrd"
- setenv
#setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" )
#setenv.add-response-header = ( "X-Secret-Message" => "42" )
- for mod_trigger_b4_dl
- trigger-before-download.gdbm-filename = "GDBM/testbase/trigger.db"
- trigger-before-download.memcache-hosts = ( "127.0.0.1:11211" )
- trigger-before-download.trigger-url = "^/trigger/"
- trigger-before-download.download-url = "^/download/"
- trigger-before-download.deny-url = "http://127.0.0.1/index.html"
- trigger-before-download.trigger-timeout = 10
- for mod_cml
- don't forget to add index.cml to server.indexfiles
- cml.extension = ".cml"
- cml.memcache-hosts = ( "127.0.0.1:11211" )
- variable usage:
- variable name without "." is auto prefixed by "var." and becomes "var.bar"
#bar = 1
#var.mystring = "foo"
- integer add
#bar += 1 - string concat, with integer cast as string, result: "www.foo1.com"
#server.name = "www." + mystring + var.bar + ".com" - array merge
#index-file.names = (foo + ".php") + index-file.names
#index-file.names += (foo + ".php")
- include
#include "conf/lighttpd-ext.conf"
- same as above if you run: "lighttpd -f conf\lighttpd.conf"
#include "lighttpd-ext.conf"
- include_shell
#include_shell "echo var.a=1"
- the above is same as:
#var.a=1
@
Any help would be appreciated.
![IMG]http://i.imgur.com/jg2t4.gif[/IMG]!