lighttpd.conf 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. server.modules = (
  2. "mod_access",
  3. "mod_cgi",
  4. "mod_compress",
  5. "mod_accesslog",
  6. "mod_rewrite",
  7. "mod_alias",
  8. "mod_auth",
  9. "mod_setenv",
  10. "mod_dirlisting",
  11. # "mod_status",
  12. # "mod_alias",
  13. # "mod_redirect",
  14. # "mod_debug"
  15. )
  16. server.document-root = "/www/htdocs"
  17. server.upload-dirs = ( "/www/htdocs/tmp" )
  18. server.errorlog = "/www/htdocs/logs/error.log"
  19. accesslog.filename = "/www/htdocs/logs/access.log"
  20. server.pid-file = "/var/run/lighttpd.pid"
  21. server.username = "httpd"
  22. server.groupname = "nogroup"
  23. server.port = 80
  24. dir-listing.activate = "enable"
  25. dir-listing.hide-dotfiles = "enable"
  26. ## defines var.superglueVersion from /etc/superglue_version
  27. include_shell "/etc/lighttpd/vars.sh"
  28. setenv.add-response-header = ( "X-Superglue-Version" => var.superglueVersion )
  29. #debug.log-request-handling = "enable"
  30. #debug.log-request-header = "enable"
  31. #debug.log-file-not-found = "enable"
  32. #debug.log-request-header-on-error = "enable"
  33. #debug.log-response-header = "enable"
  34. #debug.log-condition-handling = "enable"
  35. auth.backend = "htdigest"
  36. auth.backend.htdigest.userfile = "/www/lib/admin/htpasswd"
  37. #auth.debug = 2
  38. #setenv.add-response-header = ( "Access-Control-Allow-Origin" => "*" )
  39. compress.cache-dir = "/www/htdocs/tmp/compress"
  40. compress.max-filesize = "1024"
  41. compress.filetype = (
  42. "application/atom+xml",
  43. "application/javascript",
  44. "application/json",
  45. "application/rss+xml",
  46. "application/vnd.ms-fontobject",
  47. "application/x-font-ttf",
  48. "application/x-web-app-manifest+json",
  49. "application/xhtml+xml",
  50. "application/xml",
  51. "application/font-sfnt",
  52. "font/opentype",
  53. "image/svg+xml",
  54. "image/x-icon",
  55. "text/css",
  56. "text/html",
  57. "text/plain",
  58. "text/x-component",
  59. "text/xml",
  60. )
  61. index-file.names = (
  62. "index.html",
  63. "default.html"
  64. )
  65. cgi.assign = (
  66. ".sh" => "/bin/bash",
  67. ".cgi" => "",
  68. )
  69. url.access-deny = ( "~", ".inc", ".htaccess", ".htpasswd", "htpasswd", "/tmp/" )
  70. $HTTP["request-method"] == "GET" {
  71. url.rewrite = (
  72. "^/resources/(.*)$" => "resources/$1",
  73. "^/devTools/(.*)$" => "devTools/$1",
  74. "^/templates/(.*)$" => "templates/$1",
  75. "^/admin/(.*)$" => "admin/admin.sh"
  76. ),
  77. alias.url = (
  78. "/resources" => "/www/lib/resources",
  79. "/devTools" => "/www/lib/devTools",
  80. "/templates" => "/www/lib/templates",
  81. "/admin" => "/www/lib/admin"
  82. )
  83. ## override content and mime type for dotless files to text/html
  84. $HTTP["url"] !~ "(\.)" {
  85. setenv.add-response-header += (
  86. "X-Superglue-Dotless" => "text/html Content-Type was forced",
  87. "Content-Type" => "text/html"
  88. )
  89. }
  90. }
  91. $HTTP["request-method"] == "POST" {
  92. # url.rewrite = ( "^(/(?!admin).*)" => "post.cgi",
  93. url.rewrite = (
  94. "^(/(?!admin).*)" => "post.sh",
  95. "^(/(admin).*)" => "admin.sh"
  96. )
  97. # $HTTP["url"] =~ "^/post.cgi" {
  98. $HTTP["url"] =~ "^/post.sh" {
  99. server.document-root = "/www/lib/cgi"
  100. },
  101. $HTTP["url"] =~ "^/admin.sh" {
  102. server.document-root = "/www/lib/admin"
  103. }
  104. }
  105. auth.require = (
  106. # "/post.cgi" => ( "method" => "digest",
  107. # "realm" => "superglue",
  108. # "require" => "valid-user" ),
  109. "/post.sh" => (
  110. "method" => "digest",
  111. "realm" => "superglue",
  112. "require" => "valid-user"
  113. ),
  114. "/admin" => (
  115. "method" => "digest",
  116. "realm" => "superglue",
  117. "require" => "valid-user"
  118. ),
  119. "/logs" => (
  120. "method" => "digest",
  121. "realm" => "superglue",
  122. "require" => "valid-user"
  123. )
  124. )
  125. include "/etc/lighttpd/mime.conf"