tengo un problema después de terminar de configurar la LÁMPARA y se instala mi laravel 4 aplicación. Todo parece que salió bien, cuando voy en mi dirección ip dirección url, me muestra la primera página de mi solicitud correctamente, pero todo el resto de la página me tiro un error 404 de error El URL solicitado no se encontró en este servidor.

Así que he añadido a mi httpd.conf (en el virtual host de mi proyecto) –
AllowOverride All
El fin de permitir,denegar

<VirtualHost *:80>
        ServerName VPS-IP-ADDRESS
        DocumentRoot /var/www/html/nextmatch/public_html/public/

       <Directory /var/www/html/nextmatch/public_html/public/>
         AllowOverride all
         Order allow,deny
          <IfModule mod_rewrite.c>
          Options -MultiViews
          RewriteEngine On
          RewriteCond %{REQUEST_FILENAME} !-f
         RewriteRule ^ index.php [L]
       </IfModule>
</Directory>
</VirtualHost>

Y ahora cuando trato de navegar en cambio el error 404 tengo Prohibido
Usted no tiene permiso para acceder a este servidor.
He configurado con chmod 775 -R path/laravel/ y la carpeta de almacenamiento con 777, pero todavía tengo el mismo error y cualquier sugieren por favor? No puedo averiguar a este problema que me estoy volviendo loco! Gracias por cualquier ayuda.

Asegúrese de que el propietario de la carpeta es que el usuario del servidor de web. ls -l revelan que los archivos que pertenecen.
¿qué significa para el usuario del servidor de web? tengo acceso root en mi vps, pero he creado otro usuario llamado nextmatch (Nombre del proyecto) y que el usuario es propietario.
Respondiendo a su consulta.

OriginalEl autor Fabrizio Fenoglio | 2014-02-01

5 Comentarios

  1. 13

    El webserver comienza como un demonio (servicio) en un determinado usuario. Que el usuario está definido en httpd.conf. Por defecto que el usuario será apache. No hay que confundir el usuario de apache con el proceso httpd. El último es un servidor web demonio y el primero es el usuario con el que se va a ejecutar. Si la carpeta que creó pertenece a root o un usuario que no sea la definida en el httpd.conf, a continuación, apache no será capaz de acceder a él. La forma de identificar este problema es ir a la carpeta y hacer ls -l. Si el usuario define en httpd.conf es apache para poder acceder a la carpeta, usted debe ver:

    drwxr-xr-x.  2 apache apache    4096 Jan  8  2013 public_folder

    Nota, dice «apache apache’, lo que significa que pertenece el usuario de apache y de grupo. Si ha creado a través de la raíz, a continuación, usted probablemente verá:

    drwxr-xr-x.  2 root root    4096 Jan  8  2013 public_folder

    El usuario de apache no puede tener acceso a la carpeta definida por el usuario root. Para resolver este problema, ejecute el comando:

    chown -R apache:apache myfolder

    La opción-R es recursivo, por lo que la actualización de la titularidad de TODAS las carpetas y archivos dentro de esa carpeta para el usuario apache.

    Si su propiedad, si bien, a continuación, tratando de ‘temporalmente’ desactivar selinux. En centos:

    setenforce 0

    Que desactivar selinux hasta el próximo reinicio. Idealmente, usted desea dejar de selinux para seguridad adicional y el conjunto válido de un contexto para su apache archivos y carpetas.

    Si desactivar selinux no funciona, entonces usted probablemente ha equivocado contexto de seguridad de sus archivos y carpetas. ejecute el siguiente comando para restaurar sus contextos de seguridad:

    restorecon -R -v /var/www/
    Apagué selinux y funciona, pero supongo que no es una buena idea… ¿Cómo puedo establecer selinux para dar acceso a esta carpeta?
    Respuesta actualizada. Esencialmente, utilice el comando restorecon para restaurar el correcto contextos de selinux para los archivos y carpetas

    OriginalEl autor Rijndael

  2. 8

    Si usted está usando CentOS podría ser un problema con selinux. Revise para ver si selinux está habilitado con el ‘sestatus’. Si está habilitada, usted puede comprobar para ver si ese es el problema (temporalmente) el uso de ‘sudo setenforce 0′. Si apache se puede servir el sitio, entonces usted necesita cambiar el contexto de los archivos de forma recursiva usando «sudo comando chcon-R -t httpd_sys_content_t’ (usted puede comprobar el contexto existente ‘ls -Z’.

    Selinux no puede ser el problema, pero es digno de la comprobación.

    es muy útil para mi problema yo estaba buscando en google. muchas gracias!!!
    Me alegro de que ayudó a!

    OriginalEl autor iavery

  3. 5

    probar esta dentro de la carpeta:

    chcon -R -t httpd_sys_content_t *

    OriginalEl autor Mahdi

  4. 2
    chcon -R -t httpd_sys_content_t *

    hizo el truco para mí.

    OriginalEl autor tummie

  5. 0

    de php5.conf en /etc/apache2/mods-available

    # Running PHP scripts in user directories is disabled by default
    # 
    # To re-enable PHP in user directories comment the following lines
    # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
    # prevents .htaccess files from disabling it.
    #<IfModule mod_userdir.c>
    #    <Directory /home/*/public_html>
    #        php_admin_value engine Off
    #    </Directory>
    #</IfModule>

    OriginalEl autor Douglas G. Allen

Dejar respuesta

Please enter your comment!
Please enter your name here