lighttpd.conf 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  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. setenv.add-environment = ( "SUPERGLUE_VERSION" => var.superglueVersion )
  30. #debug.log-request-handling = "enable"
  31. #debug.log-request-header = "enable"
  32. #debug.log-file-not-found = "enable"
  33. #debug.log-request-header-on-error = "enable"
  34. #debug.log-response-header = "enable"
  35. #debug.log-condition-handling = "enable"
  36. auth.backend = "htdigest"
  37. auth.backend.htdigest.userfile = "/www/lib/admin/htpasswd"
  38. #auth.debug = 2
  39. #setenv.add-response-header = ( "Access-Control-Allow-Origin" => "*" )
  40. compress.cache-dir = "/www/htdocs/tmp/compress"
  41. compress.max-filesize = "1024"
  42. compress.filetype = (
  43. "application/atom+xml",
  44. "application/javascript",
  45. "application/json",
  46. "application/rss+xml",
  47. "application/vnd.ms-fontobject",
  48. "application/x-font-ttf",
  49. "application/x-web-app-manifest+json",
  50. "application/xhtml+xml",
  51. "application/xml",
  52. "application/font-sfnt",
  53. "font/opentype",
  54. "image/svg+xml",
  55. "image/x-icon",
  56. "text/css",
  57. "text/html",
  58. "text/plain",
  59. "text/x-component",
  60. "text/xml",
  61. )
  62. index-file.names = (
  63. "index.html",
  64. "default.html"
  65. )
  66. cgi.assign = (
  67. ".sh" => "/bin/bash",
  68. ".cgi" => "",
  69. )
  70. url.access-deny = ( "~", ".inc", ".htaccess", ".htpasswd", "htpasswd", "/tmp/" )
  71. $HTTP["request-method"] == "GET" {
  72. url.rewrite = (
  73. "^/resources/(.*)$" => "resources/$1",
  74. "^/devTools/(.*)$" => "devTools/$1",
  75. "^/templates/(.*)$" => "templates/$1",
  76. "^/admin/(.*)$" => "admin/admin.sh"
  77. ),
  78. alias.url = (
  79. "/resources" => "/www/lib/resources",
  80. "/devTools" => "/www/lib/devTools",
  81. "/templates" => "/www/lib/templates",
  82. "/admin" => "/www/lib/admin"
  83. )
  84. ## override content and mime type for dotless files to text/html
  85. $HTTP["url"] !~ "(\.)" {
  86. setenv.add-response-header = (
  87. "X-Superglue-Dotless" => "text/html Content-Type was forced",
  88. "Content-Type" => "text/html"
  89. )
  90. }
  91. }
  92. $HTTP["request-method"] == "POST" {
  93. # url.rewrite = ( "^(/(?!admin).*)" => "post.cgi",
  94. url.rewrite = (
  95. "^(/(?!admin).*)" => "post.sh",
  96. "^(/(admin).*)" => "admin.sh"
  97. )
  98. # $HTTP["url"] =~ "^/post.cgi" {
  99. $HTTP["url"] =~ "^/post.sh" {
  100. server.document-root = "/www/lib/cgi"
  101. },
  102. $HTTP["url"] =~ "^/admin.sh" {
  103. server.document-root = "/www/lib/admin"
  104. }
  105. }
  106. auth.require = (
  107. # "/post.cgi" => ( "method" => "digest",
  108. # "realm" => "superglue",
  109. # "require" => "valid-user" ),
  110. "/post.sh" => (
  111. "method" => "digest",
  112. "realm" => "superglue",
  113. "require" => "valid-user"
  114. ),
  115. "/admin" => (
  116. "method" => "digest",
  117. "realm" => "superglue",
  118. "require" => "valid-user"
  119. ),
  120. "/logs" => (
  121. "method" => "digest",
  122. "realm" => "superglue",
  123. "require" => "valid-user"
  124. )
  125. )
  126. include "/etc/lighttpd/mime.conf"