Lighttpd 403 Prohibido para archivos PHP




http-status-code-403 (4)

Acabo de instalar lighttpd en mi servidor dedicado, mod_fastcgi está habilitado, así que he agregado las siguientes líneas al archivo lighttpd.conf :

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

Pero todavía no funciona, ya que recibo el mensaje 403 - Forbidden cuando intento ingresar un archivo PHP en mi navegador web ... Cuando borro el archivo index.php de mi directorio raíz web y coloco el index.html allí, entonces todo está bien y no hay errores, no importa si el archivo index.php tiene 100 líneas o solo una - <?php echo 'test'; ?> <?php echo 'test'; ?> siempre aparece un 403 - Forbidden , ahora no tengo ideas.

¿Por qué sucede?

ls -la de mi directorio raíz web:

#
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


Es poco probable, pero se debe señalar como otra posible razón para las respuestas "403 Prohibido".

Verifique las instrucciones del módulo de acceso (mod_access) en el archivo de configuración (lighttpd.conf)

Ejemplo:

      url.access-deny = ( "", ".php");

Docs: Módulo mod_access


Tu php no está configurado correctamente. compruebe su lighttpd error.log indicará algo como:

(mod_fastcgi.c.1397) [ERROR]: spawning fcgi failed. 

yo suelo:

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"
                 )))   

asegúrese de que fastcgi esté habilitado en modules.conf

server.modules = (
  "mod_access",
  "mod_fastcgi",
#  "mod_alias",
#  "mod_auth",
#  "mod_evasive",
#  "mod_redirect",
#  "mod_rewrite",
#  "mod_setenv",
#  "mod_usertrack",
)

Tuve el mismo problema. La solución fue tan simple como mover los archivos de configuración para que estuvieran habilitados. Todo lo que hice fue ...

$ 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/

y recargar ...

$ service lighttpd force-reload




http-status-code-403