Lighttpd 403禁止PHP文件

Sco*_*ott 18 php lighttpd http-status-code-403

我刚刚在我的专用服务器上安装了lighttpd,mod_fastcgi已启用,所以我将以下行添加到lighttpd.conf文件中:

fastcgi.server = ( ".php" =>
( "localhost" =>
                     (
                        "socket" => "/tmp/php-fastcgi.socket",
                        "bin-path" => "/usr/local/bin/php-cgi"
                      )
                   )
)
Run Code Online (Sandbox Code Playgroud)

但它仍然无济于事,因为403 - Forbidden当我尝试在我的网络浏览器中输入PHP文件时,我收到了消息...当我index.php从我的网络根目录中删除该文件并将其放在index.html那里时,一切都很好,并且没有错误,无论index.php文件有100行还是只有一行 - <?php echo 'test'; ?>它总是显示出来403 - Forbidden,我现在已经没有想法了.

为什么会这样?

ls -la 我的网站根目录:

#
total 6

    drwxr-xr-x  15 root  wheel   1536 Jul 18 10:23 .
    drwxr-xr-x   4 root  wheel    512 Jul 18 08:45 ..
    drwxr-xr-x   2 www   www      512 Jul  1 02:36 cache
    drwxr-xr-x   2 www   www      512 Jul  1 02:36 config
    drwxr-xr-x   6 www   www      512 Jul  1 02:36 inc
-rw-r--r--   1 www   www        9 Jul 18 11:02 index.php
Run Code Online (Sandbox Code Playgroud)

Mai*_*one 14

您的PHP配置不正确.检查你的lighttpd error.log它会说:

(mod_fastcgi.c.1397) [ERROR]: spawning fcgi failed. 
Run Code Online (Sandbox Code Playgroud)

我用:

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"
                 )))   
Run Code Online (Sandbox Code Playgroud)

确保在modules.conf中启用了fastcgi

server.modules = (
  "mod_access",
  "mod_fastcgi",
#  "mod_alias",
#  "mod_auth",
#  "mod_evasive",
#  "mod_redirect",
#  "mod_rewrite",
#  "mod_setenv",
#  "mod_usertrack",
)
Run Code Online (Sandbox Code Playgroud)


小智 10

同样的问题,Mint的修复是安装php5-cgi包.
sudo apt-get install php5-cgi
启用fastcgi模块
sudo lighttpd-enable-mod fastcgi fastcgi-php
,最后重新加载
sudo service lighttpd force-reload


max*_*lan 6

我遇到过同样的问题.修复就像移动配置文件一样简单,因此启用了.我所做的只是......

$ ln -s /etc/lighttpd/conf-available/10-fastcgi.conf /etc/lighttpd/conf-enabled/
$ ln -s /etc/lighttpd/conf-available/15-fastcgi-php.conf /etc/lighttpd/conf-enabled/
Run Code Online (Sandbox Code Playgroud)

并重新加载......

$ service lighttpd force-reload
Run Code Online (Sandbox Code Playgroud)

  • 这不是一个正确的方法.您必须没有运行lighty-enable-mod命令. (2认同)