Magento 2: 500 Error interno del servidor

10

Seguí los documentos de desarrollo de Magento a continuación:

Si agrega una nueva plantilla .html y luego la edita, los cambios no se aplicarán hasta que haga lo siguiente: elimine todos los archivos en los directorios pub / static / frontend y var / view_preprocessing, luego vuelva a cargar las páginas. Puede eliminar los archivos manualmente o ejecutar el comando grunt clean: en la CLI. Para obtener detalles sobre el uso de Grunt en Magento, consulte Instalación y configuración de Grunt.

Sin embargo, ahora en el modo de desarrollador establecido a través de htaccess, obtengo el Error interno del servidor 500 en todas las URL del sitio y del administrador. ¿Es un problema de almacenamiento en caché si está buscando los archivos borrados para renderizar?

Matthew McLennan
fuente
2
revise su registro de errores.
MagenX
el servidor interno 500 viene debido al permiso de archivo, solo da 755 a la carpeta y 644 al archivo
Alam Zaib

Respuestas:

12

en modo desarrollador, los archivos se generan automáticamente cuando se solicitan y no se encuentran. Entonces esto no debería ser un problema.

Cuando enfrenta un error 500, lo primero que debe hacer es buscar su registro de errores del servidor web.

Cuando se ejecuta en apache, se puede encontrar principalmente en una de estas 2 ubicaciones:

/ var / log / httpd / -> centos, archlinux ...

/ var / log / apache2 / -> debian, ubuntu ...

David Verholen
fuente
5

Intente ejecutar el siguiente comando en la raíz de Magento y antes de ejecutar este comando otorgue los permisos completos al directorio de instalación

php bin/magento setup:static-content:deploy -f
Gaurav Patel
fuente
2

En CentOS 7, deshabilité la configuración del firewall con el siguiente comando:

$ setenforce 0

y eso es. El problema se resuelve. con RHEL 7 and CentOS 7, SELinux hace que el sistema sea más seguro, pero plantea muchos desafíos para las personas que no son Linux.

Rajveer
fuente
2

Solución: ¡Error interno del servidor! Magento 2.2.2 Muy importante !! especialmente para WAMPserver en windows10

  1. Asegúrese de que LoadModule version_module modules / mod_version.so se cargue desde httpd.conf, este error causa un error interno del servidor de Magento 2.2.2 y si la siguiente configuración tiene "#", por favor elimine "#"

LoadModule version_module modules / mod_version.so

  1. cree una nueva carpeta y asígnele el nombre "estática" después de / pub / se ve así: http: // localhost / magento222 / pub / static / haga clic con el botón derecho en la carpeta "estática" y haga clic en la propiedad para asegurarse de que se pueda escribir.

  2. elimine su antigua base de datos mysql para magento222 y cree una nueva para realizar una instalación limpia y segura.

PD: Ver. 2.2.2 no es una versión estable.

Simon Chang
fuente
2

Verifique .htaccess first.posibility del módulo no habilitado. Debido a que enfrenté este problema debido al módulo mod_version, lo habilité desde apache y ahora está funcionando.

También puede verificar con la sustitución de su archivo .htaccess O cambiarle el nombre para confirmar la emisión del archivo .htaccess.

Gracias

Savoo
fuente
2
reemplacé el archivo .htaccess y resolví el problema gracias
Sagar Dobariya
1
  1. También podría deberse a permisos de archivo incorrectos.
  2. Asegúrese de que CHMOD a "user":"group" "magento install DIR"
Runehm
fuente
1

También me encontré con la misma situación en la mañana, pero gracias a la respuesta de @david.

Después de un poco de investigación del directorio de registro de Apache, llegué a saber que Apache no tiene permiso para leer la carpeta / etc / de la aplicación .

Entonces, después de dar permiso, todo funciona bien.

Deepanshu Jain
fuente
1
Por favor dime el camino.
jafar pinjar
Si está en un entorno Linux, generalmente será / var / log / apache2 o / var / log / httpd /
Deepanshu Jain
1

En mi caso, se debe a los problemas de propiedad. Estaba usando ubuntu os, así que usé el siguiente comando para corregir la propiedad.

sudo useradd magento

Ahora asocie este usuario de magento al grupo de usuarios del servidor web. En ubuntu es por defecto www-data

sudo usermod -g www-data magento

Ahora navegue por el directorio del proyecto Magento en la terminal y ejecute los siguientes comandos.

sudo find var vendor pub/static pub/media app/etc -type f -exec chmod g+w {} \; sudo find var vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} \; sudo chown -R magento:www-data . sudo chmod u+x bin/magento

Una vez que estos comandos se ejecutan correctamente, el usuario de magento tiene todos los permisos necesarios, independientemente de la configuración de Magento necesaria.

Reinicie el servidor apache con el siguiente comando

sudo systemctl restart apache2

Mukesh Ojha
fuente
su código me costó perder la propiedad de mi carpeta publiv_html y todo dentro, cualquiera que tenga el problema debe ejecutar este comando para revertir chanes: para i in cat /etc/trueuserdomains | awk '{print $2}' > do> chown $ i. $ i / home / $ i -R; > chown $ i.mail / home / $ i / etc -R; > chown $ i.nobody / home / $ i / public_html; > chmod 750 / home / $ i / public_html; > hecho;
The Dead Guy el
@TheDeadGuy, era un comentario demasiado viejo. Me disculpé por eso. Ahora que he editado mi respuesta, intente con esto.
Mukesh Ojha
eres perdonado;)
The Dead Guy
0

Parece que solo necesita indexar.php

mostrar errores de php Mostrar errores de PHP

y después puede arreglar

en mi caso, era permiso para directorios

Alex
fuente
0

Si está utilizando Magento 2.2.4. Luego primero vaya al directorio de registro de Apache y

[Wed May 30 00:58:17.857269 2018] [core:alert] [pid 7184:tid 1244] [client 127.0.0.1:65528] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 30 00:58:42.568180 2018] [core:alert] [pid 7184:tid 1248] [client 127.0.0.1:49165] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 30 00:59:01.667499 2018] [core:alert] [pid 7184:tid 1252] [client 127.0.0.1:49169] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 30 01:00:04.655715 2018] [core:alert] [pid 7184:tid 1272] [client 127.0.0.1:49174] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 30 01:00:35.151803 2018] [core:alert] [pid 7184:tid 1272] [client 127.0.0.1:49201] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration

Según el registro, el problema principal es un archivo .htaccess. No sé la razón exacta, pero el siguiente código de eliminación del archivo .htaccess está funcionando.

Eliminar el código de la etiqueta del archivo.

<Files composer.json>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files composer.lock>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .gitignore>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .htaccess>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .htaccess.sample>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .php_cs.dist>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .travis.yml>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files CHANGELOG.md>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files COPYING.txt>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files Gruntfile.js>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files LICENSE.txt>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files LICENSE_AFL.txt>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files nginx.conf.sample>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files package.json>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files php.ini.sample>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files README.md>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files auth.json>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files magento_umask>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>

Nota: No sé si puede haber problemas en el futuro o no. Pero me ayuda.

Shuvankar Paul
fuente
0

Luché durante una hora y finalmente el problema se resolvió después de eliminar la configuración del proxy. Quien enfrenta este problema, verifique su configuración de proxy.

L-Board
fuente
0

Se resolvió otorgando los permisos de archivo adecuados a la carpeta raíz de magento

Neethu Mohandas
fuente
0

Es un tema muy sofisticado.

Muchas razones posibles pueden suceder para esto. Mejor que ir al azar, depurar el problema.

si está usando apache2 para ir a / var / log / apache2 y encontrará error.log, en otro lugar encontrará una razón específica por la que esto está sucediendo. Y lo resolvió mediante una búsqueda en Internet.

Posible problema:

  • Si copia los archivos y la base de datos del sitio existente y coloca directoly en el nuevo servidor, entonces puede haber algún problema de compatibilidad, para esto cargue una copia de freash e intente instalarlo, encontrará lo que falta
  • En la nueva versión de Magento, hay una carpeta especial llamada generada . Eso debe ser permiso de escritura.
  • Otra razón principal es el permiso general de archivos. Asegúrese de que var, generado, proveedor, aplicación / etc, pub / media y pub / static tengan acceso de escritura adecuado.
Shuvankar Paul
fuente