Hola.
He seguido los tutoriales para cambiar mi web prestashop 1.7.6 de una carpeta a public_html y la he cambiado.
Todo funciona bien pero cuando intento acceder a Módulos-Gestor de módulos, lanza un error 500 y no me deja acceder a los módulos. También, si accedes a Módulos-Catálogo de módulos, se queda pensando y no muestra el catálogo de módulos.
¿Alguien tiene alguna idea de qué puede estar pasando?
Saludos y gracias,
Carmelo
URL del sitio: Contenido solo visible a usuarios registrados
Hola
Si se muestra un error 500 debe haber algún registro del error, desde tu área de cliente pasa una revisión con la herramienta Stephan y verifica los errores recientes que te reporta, revisa el siguiente artículo de referencia:
https://guias.webempresa.com/preguntas-frecuentes/revision-automatica-asistente-virtual-stephan/ , puedes copiarnos los errores recientes relacionados con esto.
Por otro lado, has probado dejar tu sitio web en su ubicación original?, verifica si volviendo a la ubicación ya no tienes problemas, ya que es posible que por ejemplo la carpeta tenga algún tema de permisos u otra versión de PHP.
Saludos.
Gracias por la respuesta, Jhon.
Al dejar mi web en el sitio original, funciona.
He repasado la versión de php, y public_html tiene la misma que la carpeta ps17. Versión php 7.3
El mensaje que me detecta Stephan es el siguiente:
[15-Aug-2019 17:24:52 Europe/Madrid] PHP Fatal error: Uncaught SymfonyComponentDebugExceptionFatalThrowableError: Cannot use object of type SymfonyComponentHttpFoundationParameterBag as array in /home2/aderezos/public_html/src/Adapter/Security/Admin.php:91
Saludos.
Hola
Podrías probar eliminando todo lo de la carpeta cache.
Revisa el siguiente artículo, especialmente el punto 8, https://zemez.io/prestashop/support/how-to/prestashop-1-7-transfer-website-one-domain-another/
Saludos.
Pues he borrado la carpeta caché excepto el index.php, como indica el artículo, pero sigue sin funcionar.
Se te ocurre algo más, Jhon?
Hola
Si has movido archivos, asegúrate de que se copiaron todos, esto se puede comprobar cuando no hay archivos en la ubicación original. Asegúrate igualmente de tener espacio suficiente en tu cuenta de hosting para que se pueda crear la neuva cache.
Revisa si dentro de la carpeta app hay alguna carpeta de cache, podrías probar también eliminarla.
Si has realizado todos los pasos correctamente, si funciona en la carpeta y en la raiz no, prueba establecer nuevamente la versión de PHP ya que podría ser que no se haya establecido bien, puedes revisar igualmente el archivos .htaccess, una de las primeras instrucciones debería ser la que defina la versión de PHP, puedes enviar una captura de pantalla.
Saludos.
Hola, de nuevo.
He revisado la version de php y la he vuelto a poner (por si acaso).
Adjunto una captura del htacces. porque veo que hay cosas que no me cuadran pero que no quiero tocar porque mis conocimientos son limitados. Mejor que lo veais los que entendeis para me digais si está correcto. Veo que sale la carpeta en la que estaba pero no sé si borrar las lineas en las que sale o modificar por la ruta de public_html. Mejor una imagen que mil palabras:
SetHandler application/x-lsphp73
# ~~start~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again
# .htaccess automaticaly generated by PrestaShop e-commerce open-source solution
# http://www.prestashop.com - http://www.prestashop.com/forums
SetEnv HTTP_MOD_REWRITE On
RewriteEngine on
#Domain: aderezoscarmelogarcia.com
RewriteRule . - [E=REWRITEBASE:/ps17/]
RewriteRule ^api(?:/(.*))?$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]
# Images
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.jpg [L]
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.jpg [L]
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$1$2$3$4$5.jpg [L]
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg [L]
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg [L]
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg [L]
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg [L]
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg [L]
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^c/([0-9]+)(-[.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/c/$1$2$3.jpg [L]
RewriteCond %{HTTP_HOST} ^aderezoscarmelogarcia.com$
RewriteRule ^c/([a-zA-Z_-]+)(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/c/$1$2.jpg [L]
# AlphaImageLoader for IE and fancybox
RewriteRule ^images_ie/?([^/]+).(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 [L]
# Dispatcher
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ %{ENV:REWRITEBASE}index.php [NC,L]
AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/font-woff .woff
AddType font/woff2 .woff2
Header set Access-Control-Allow-Origin "*"
ExpiresActive On
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType text/css "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType application/javascript "access plus 1 week"
ExpiresByType application/x-javascript "access plus 1 week"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
ExpiresByType image/vnd.microsoft.icon "access plus 1 year"
ExpiresByType application/font-woff "access plus 1 year"
ExpiresByType application/x-font-woff "access plus 1 year"
ExpiresByType font/woff2 "access plus 1 year"
ExpiresByType application/vnd.ms-fontobject "access plus 1 year"
ExpiresByType font/opentype "access plus 1 year"
ExpiresByType font/ttf "access plus 1 year"
ExpiresByType font/otf "access plus 1 year"
ExpiresByType application/x-font-ttf "access plus 1 year"
ExpiresByType application/x-font-otf "access plus 1 year"
Header unset Etag
FileETag none
AddOutputFilterByType DEFLATE text/html text/css text/javascript application/javascript application/x-javascript font/ttf application/x-font-ttf font/otf application/x-font-otf font/opentype image/svg+xml
#If rewrite mod isn't enabled
ErrorDocument 404 /ps17/index.php?controller=404
# ~~end~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again
He revisado si la copia de las carpetas se han realizado bien y parece que sí.
Gracias
Hola
Veo que hay varios intententos de estableder la versión de PHP, elimina estas líneas:
SetHandler application/x-lsphp73
Y luego establece nuevamente la versión de PHP para tu carpeta.
La otra opción es renombrar tu archivo .htaccess, luego estableder la versión de PHP, sin embargo igualmente tendrías que configurar urls amigables.
Saludos.
Hola, Jhon.-
He modificado el .htaccess, quitando las lineas que me has dicho y ha quedado así:
SetHandler application/x-lsphp73
Sigue dando el mismo error.
¿Alguna sugerencia más?
Saludos,
Carmelo
Hola Carmelo.
Modifica la versión de PHP de ese dominio, la versión 7.3 no se lleva muy bien con prestashop.
Puedes probar con la versión 7.2 e ir bajando si ves que continuas con el problema.
Puedes modificar la versión de PHP facilmente desde tu cuenta de cPanel.
Tienes información en esta guia:
-> https://guias.webempresa.com/preguntas-frecuentes/cambiar-la-version-php/
Un saludo
Gracias, Pepe, por tu respuesta.
He probado todas las versiones de php 7 y sigue sin funcionar. Ahora el error 500 que me saca Stephan es:
[17-Aug-2019 17:37:11 Europe/Madrid] PHP Fatal error: Cannot declare class MailAlert, because the name is already in use in /home2/aderezos/public_html/modules/ps_emailalerts/MailAlert.php on line 314
No sé que hacer. Si instalo desde cero Ps 1.7.6 y restauro base de datos para no perder los datos ¿Funcionaría o me seguiría dando el mismo error?
Si eso falla solo puedo restaurar copia de seguridad y volver a dejarlo todo como estaba antes de cambiar a public_html; aunque la web, de vez en cuando, me daba un error 500 por problemas con Smarty.
:blush: :blush:
Saludos
Hola Carmelo.
Ok, Instala la versión 5.6
Por el aviso que muestras en la primera entrada el problema viene por la versión de PHP.
Revisa lo siguiente donde hay usuarios que tratan el mismo tema, en este caso es para acceder al login pero el error es el mismo:
-> https://github.com/PrestaShop/PrestaShop/issues/14607
Un saludo
Gracias, Pepe.
He cambiado la versión de php a 5.6. El resultado, el mismo.
Da error 500. El registro de Stephan:
[17-Aug-2019 19:22:41 Europe/Madrid] PHP Fatal error: Cannot redeclare class MailAlert in /home2/aderezos/public_html/modules/ps_emailalerts/MailAlert.php on line 0
Parece que ahora da el error en otra linea 🙁 🙁
Hola Carmelo,
¿Aplicaste algo de lo sugerido en el enlace que te compartió Pepe?
Respecto a la restauración mediante copia de seguridad es opción pero prueba primero desinstalando, y reinstalando el módulo de ps_email_alerts.
Descarga el modulo en el siguiente enlace -> https://github.com/PrestaShop/mailalerts
Saludos.
Hola, Bulmaro
Gracias por responder. He aplicado lo que sugirió Pepe pero no ha funcionado.
En cuanto a lo de descargarme el módulo, lo he hecho pero como no puedo acceder al gestor de módulos; no sirve para nada 🙁
Al final he decidido abandonar y restaurar.
Cuando tenga claro como hacerlo, lo volveré a intentar.
Muchísimas gracias a todos por vuestra ayuda.
Un saludo,
Carmelo