Differences
This shows you the differences between the selected revision and the current version of the page.
| howto:lighttpd_php 2008/04/03 07:28 | howto:lighttpd_php 2017/09/06 17:34 current | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | 2QPb37 <a href="http://gydwpfotygmz.com/">gydwpfotygmz</a>, [url=http://vhvrrvofgfpe.com/]vhvrrvofgfpe[/url], [link=http://vkompzmhmamu.com/]vkompzmhmamu[/link], http://ylaurlwiathr.com/ | + | ====== How-to setup Lighttpd and php ====== |
| + | |||
| + | ===== Files needed ===== | ||
| + | |||
| + | - [[http://dns323.kood.org/downloads/lighttpd-1.4.13.tar.bz2|Lighttpd (recommended)]], [[http://dns323.kood.org/downloads/lighttpd-pcre-1.4.13.tar.bz2|Lighttpd with pcre]] or [[http://dns323.kood.org/downloads/lighttpd-ssl-pcre-1.4.13.tar.bz2|Lighttpd with pcre and ssl]] | ||
| + | - [[http://dns323.kood.org/downloads/php-4.4.4.tar.bz2|php4 (recommended)]], [[http://dns323.kood.org/downloads/php-5.1.6.tar.bz2|php5]] or [[http://dns323.kood.org/downloads/php-3.0.18-31.tar.bz2|php3 with latest security updates from debian stable]] | ||
| + | |||
| + | ===== Preparation ===== | ||
| + | |||
| + | - Make following directory's: | ||
| + | * ''/mnt/HD_a2/lighttpd/'' - directory binary (lighttpd, php and modules) files. | ||
| + | *''/mnt/HD_a2/lighttpd/www/'' - directory for files you wish to share. | ||
| + | - [[:howto:extract|Extract]] Lighttpd and php archive to ''/mnt/HD_a2/lighttpd/'' directory. | ||
| + | - Optionaly you may want to setup php.ini. Default location for this file is ''/mnt/HD_a2/php.ini''. You can get php.ini from [[http://ee2.php.net/get/php-4.4.4.tar.bz2/from/a/mirror|php.net]]. Also look [[http://ee2.php.net/manual/en/ini.php|manual]] before editing. | ||
| + | |||
| + | ===== Lighttpd configuration ===== | ||
| + | |||
| + | Following configuration is meant for lighttpd/lighttpd-pcre and php4/php5 | ||
| + | |||
| + | /mnt/HD_a2/lighttpd/lighttpd.conf | ||
| + | |||
| + | <code>#Set path to folder that has files for website | ||
| + | server.document-root = "/mnt/HD_a2/lighttpd/www/" | ||
| + | |||
| + | #Set port to run webserver on (not 80) | ||
| + | server.port = 8080 | ||
| + | |||
| + | #Non-default modules needed for css redirect, authentication, server status | ||
| + | server.modules = ( | ||
| + | "mod_alias", | ||
| + | "mod_auth", | ||
| + | "mod_status", | ||
| + | "mod_fastcgi" | ||
| + | ) | ||
| + | |||
| + | #Mimetype assignments | ||
| + | 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" => "audio/x-wav", | ||
| + | ".wav" => "audio/x-wav", | ||
| + | ".gif" => "image/gif", | ||
| + | ".jpg" => "image/jpeg", | ||
| + | ".jpeg" => "image/jpeg", | ||
| + | ".png" => "image/png", | ||
| + | ".bmp" => "image/bmp", | ||
| + | ".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", | ||
| + | ".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" | ||
| + | ) | ||
| + | |||
| + | #File to load when path only provided, if not found file listing will display instead | ||
| + | index-file.names = ( "index.htm", "index.html", "index.php", "default.htm" ) | ||
| + | |||
| + | #Name and path to server error log | ||
| + | server.errorlog = "/mnt/HD_a2/lighttpd/lighttpd.error.log" | ||
| + | |||
| + | #Path to css folder | ||
| + | alias.url = ( "/css/" => "/mnt/HD_a2/lighttpd/" ) | ||
| + | |||
| + | #Enable directory listing and point to custom css file (supply dsm-g600 IP) | ||
| + | server.dir-listing = "enable" | ||
| + | dir-listing.external-css = "http://(your.ip.here)/css/lighttpd.css" | ||
| + | |||
| + | fastcgi.server = ( ".php" => | ||
| + | (( "host" => "127.0.0.1", | ||
| + | "port" => 1026, | ||
| + | "bin-path" => "/mnt/HD_a2/lighttpd/php", | ||
| + | "min-procs" => 2, | ||
| + | "max-procs" => 4, | ||
| + | "max-load-per-proc" => 8, | ||
| + | "idle-timeout" => 50, | ||
| + | "broken-scriptfilename" => "enable" | ||
| + | )) | ||
| + | ) | ||
| + | |||
| + | #URL to server status page local access only (supply dsm-g600 subnet) | ||
| + | $HTTP["remoteip"] == "192.168.0.0/16" { | ||
| + | status.status-url = "/server-status" | ||
| + | } | ||
| + | |||
| + | #Authentication configuration | ||
| + | #auth.debug = 0 | ||
| + | #auth.backend = "plain" | ||
| + | #auth.backend.plain.userfile = "/mnt/HD_a2/lighttpd/lighttpd-plain.user" | ||
| + | |||
| + | # Set Restrictions: | ||
| + | # | ||
| + | # ( <left-part-of-the-url> => | ||
| + | # ( "method" => "digest"/"basic", | ||
| + | # "realm" => <realm>, | ||
| + | # "require" => "user=<username>|user=<username>|valid-user" ) | ||
| + | # ) | ||
| + | # | ||
| + | # <realm> is a string to display in the dialog presented to the user | ||
| + | |||
| + | #auth.require = ( "/downloads/" => | ||
| + | # ( | ||
| + | # "method" => "digest", | ||
| + | # "realm" => "DSM-G600 Downloads", | ||
| + | # "require" => "valid-user" | ||
| + | # ) | ||
| + | # ) | ||
| + | </code> | ||
| + | |||
| + | |||
| + | ===== Code for fun_plug ===== | ||
| + | |||
| + | You need to enter following code to your fun_plug file if you wish to start webserver automatically at every time to boot up your DSM-G600. | ||
| + | /mnt/HD_a2/lighttpd/lighttpd -f /mnt/HD_a2/lighttpd/lighttpd.conf -m /mnt/HD_a2/lighttpd | ||
| + | |||
| + | ===== Links ===== | ||
| + | * [[http://dns323.kood.org/forum/t24-lighttpd.html|Forum thread]] | ||
| + | * [[http://www.lighttpd.net/|Lighttpd]] | ||
| + | * [[http://www.php.net/|php]] | ||
| + | * [[http://trac.lighttpd.net/trac/wiki/Docs%3ASSL|Lighttpd with ssl]] | ||