我一直在尝试在 Windows 上使用 lighttpd 配置 Web 服务器。安装 PHP 后,每次我尝试从目录“htdocs”访问 PHP 文件时,都会收到错误消息:“403 - Forbidden”。我已按照本教程设置 lighttpd:http: //joshdick.net/writing/lighttpd。我搜索了谷歌,但没有找到关于这个问题的任何好的文档。仅供参考:我对此很陌生。我在这里有我的“lighttpd-inc.conf”文件的内容。
任何帮助将不胜感激。谢谢!
我一直在尝试在 Windows 上使用 lighttpd 配置 Web 服务器。安装 PHP 后,每次我尝试从目录“htdocs”访问 PHP 文件时,都会收到错误消息:“403 - Forbidden”。我已按照本教程设置 lighttpd:http: //joshdick.net/writing/lighttpd。我搜索了谷歌,但没有找到关于这个问题的任何好的文档。仅供参考:我对此很陌生。我在这里有我的“lighttpd-inc.conf”文件的内容。
任何帮助将不胜感激。谢谢!
这可能是很多事情。例如,如果您在 Windows 上使用 FastCGI,则可能会出现问题(它们玩得不好)。它可能就像您的文件夹权限(在 Windows 中)不允许访问此文件夹一样简单。但是,在尝试查看您的 .conf 文件后(缺少换行符使其难以阅读),我有一个可以开始查找的地方。
看起来您不正确地引用了 htdocs 的路径。例如,这里的这一行:
server.document-root = "HTDOCS/"
我认为这条路不会正常工作。通常你必须有一个“/HTDOCS/”风格的路径。整个文件中有许多这样的行。以下是有关此内容的一些文档的链接:
http://redmine.lighttpd.net/wiki/1/server.document-rootdetails
您的 php 的 cgi/fcgi 配置不正确。CGI 或 FCGI 是将 PHP 和 lighttpd 绑定在一起的粘合剂。检查您的 lighttpd error.log 它将显示如下内容:
(mod_fastcgi.c.1397) [ERROR]: spawning fcgi failed.
我用:
fastcgi.server = ( ".php" => ((
"bin-path" => "/bin/php-cgi",
"socket" => "/tmp/php.socket",
"max-procs" => 1,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "16",
"PHP_FCGI_MAX_REQUESTS" => "10000"
),
"broken-scriptfilename" => "enable"
)))
确保在 modules.conf 中启用了 fastcgi
server.modules = (
"mod_access",
"mod_fastcgi",
# "mod_alias",
# "mod_auth",
# "mod_evasive",
# "mod_redirect",
# "mod_rewrite",
# "mod_setenv",
# "mod_usertrack",
)