es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Despliegue de Laravel en un subdirectorio en un servidor web.

Necesito ayuda con mis archivos de .httacces. Subí una subcarpeta “erp” a mi servidor web que contiene todos los archivos de mi aplicación Laravel. Cuando intento abrirlo en mi navegador, obtengo un error 403:

No tiene permiso para acceder a /erp/ en este servidor.

¿Cómo puedo solucionar este problema? Aquí está mi archivo .httacces:

En la raíz:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !GOOGLE404probe
RewriteRule ^erp/(.*)$ public/$1 [L] -----> Aquí intenté algo pero parece que no funciona.
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

Y no tengo un archivo .httacces en mi carpeta erp.

Mi servidor está basado en Linux y ya modifiqué los archivos de ERP a permisos 755.

¡Gracias por tu ayuda!

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema está relacionado con los permisos en su servidor. Para solucionarlo, puede intentar los siguientes pasos:

    1. Verifique la propiedad de la carpeta “erp” y su contenido utilizando el siguiente comando:
      ls -l /ruta/a/la/carpeta/erp
      Si el propietario no es el usuario de su servidor web (por ejemplo, www-data), puede cambiarlo utilizando el comando chown:
      sudo chown -R www-data:www-data /ruta/a/la/carpeta/erp
    2. Asegúrese de que su servidor web Apache tenga permisos de lectura y ejecución para la carpeta “erp” y su contenido utilizando el siguiente comando:
      chmod -R 755 /ruta/a/la/carpeta/erp
    3. Agregue las siguientes líneas a su archivo .htaccess principal en el directorio raíz de su sitio web (no el archivo .htaccess en la carpeta “erp”):
      RewriteCond %{REQUEST_URI} ^/erp [NC]
      RewriteRule ^(.*)$ /erp/public/$1 [L]

      Esto redirigirá todas las solicitudes para la carpeta “/erp” a la subcarpeta “public” de su aplicación Laravel.

    Después de realizar estos cambios, intente acceder a su aplicación Laravel de nuevo en el navegador. Debería cargarse correctamente sin errores 403.

Comments are closed.