hola chicos antes que nada espero que se encuentren bien y con salud...
Les escribo para ver si me pueden ayudar con un problema que tengo de un error 500 en el backend de mi prestashop 1.7.6.3 y es el siguiente:
cada vez que trato de entrar en la pestaña de pagos>preferencias(aquí específicamente en "preferencias") me salta Error 500
Oops! An Error Occurred
The server returned a "500 Internal Server Error".
Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused.
Entonces para verificar que ocurría active el modo depuración y me salia el siguiente Error (teniendo el prestashop 1.7.6.3 con PHP versión 7.3):
(1/1) ContextErrorException
Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"?
in UnitOfWork.php line 2636
at ErrorHandler->handleError(2, '"continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"?', '/home/santorin/public_html/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php', 2636, array('class' => 'Doctrine\\ORM\\UnitOfWork', 'e' => 32767, 'file' => '/home/santorin/public_html/vendor/composer/../doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php'))
in DebugClassLoader.php line 156
at require()
in DebugClassLoader.php line 156
at DebugClassLoader->loadClass('Doctrine\\ORM\\UnitOfWork')
at spl_autoload_call('Doctrine\\ORM\\UnitOfWork')
in EntityManager.php line 160
at EntityManager->__construct(object(Connection), object(Configuration), object(ContainerAwareEventManager))
in EntityManager.php line 850
at EntityManager::create(object(Connection), object(Configuration))
in appDevDebugProjectContainer.php line 1815
at appDevDebugProjectContainer->getDoctrine_Orm_DefaultEntityManagerService()
in Container.php line 306
at Container->get('doctrine.orm.default_entity_manager')
in ManagerRegistry.php line 48
at ManagerRegistry->getService('doctrine.orm.default_entity_manager')
in AbstractManagerRegistry.php line 231
at AbstractManagerRegistry->getManagers()
in ProxyCacheWarmer.php line 49
at ProxyCacheWarmer->warmUp('/home/santorin/public_html/var/cache/dev')
in CacheWarmerAggregate.php line 52
at CacheWarmerAggregate->warmUp('/home/santorin/public_html/var/cache/dev')
in Kernel.php line 680
at Kernel->initializeContainer()
in Kernel.php line 135
at Kernel->boot()
in Kernel.php line 195
at Kernel->handle(object(Request), 1, false)
in index.php line 86
Luego como no tengo ni puñetera idea de que es todo ese código de error, lo siguiente que hice fue probar cambiando la versión del PHP 7.3 a 7.1 y de esa manera solo en modo depuración no me da ningún error 500 y me deja acceder hasta pago>preferencias y puedo modificar, guardar cambios sin ningún problema.
Entonces por favor me pueden ayudar con este problema, quisiera poder acceder a la configuración de pago>preferencias sin tener que activar el modo depuración y teniendo que bajar la versión de PHP a 7.1
muchas gracias de ante mano
un abrazo !
Hola Hibrahim.
Veo varios módulos con problemas que podrían estar afectando:
PHP Warning: Illegal string offset 'url'
in /home/santorin/public_html/modules/g_productinstagram/controllers/front/instagram.php on line 447 PHP Notice: Undefined variable: id_currency
in /home/santorin/public_html/modules/hideproduct/classes/HideproductConfiguration.php
PHP Notice: Undefined index: name in /home/santorin/public_html/modules/ganalytics/ganalytics.php
Estos avisos hacen referencia a los módulos " g_productinstagram, hideproduct y ganalytics
.- Accede a la carpeta Modules y renombra las carpetas de los módulos que te indico.
Podrias comprobar antes de renombrarlos si tienen actualizaciones.
Nota: Prestashop no funciona muy bien con versiones de PHP superiores a la 7.2
-> https://devdocs.prestashop.com/1.7/basics/installation/system-requirements/
Un saludo
hola pepe que gusto que me respondas la verdad, espero que estés muy bien y tu familia también...
vale te comento tampoco puedo ver las actualizaciones de los módulos desde el backend en el apartado de módulos>actualizaciones del prestashop por que me da también error 500(pero si que puedo entrar en modo depuración con PHP 7.1), si vi que esos módulos que me comentas dos de ellos tienen una versión mas nueva que las que yo tengo que son estos dos g_productinstagram, hideproduct, el modulo ganalytics no encuentro una versión superior al al 2.3.4 entonces voy a probar actualizar esos dos módulos a ver que pasa si mejora algo la cosa.
alguna otra cosa que se te venga a la cabeza pepe ??
un abrazo !
Hola Ibrahim,
Como te comento Pepe esta generando un error la versión de PHP, es recomendable que actualices la versión a PHP 7.1 y verifiques todo funciona sin activar el modo depuración.
La versión te esta creando conflictos con tu versión de Prestashop y algunos Módulos.
Saludos.
hola karen, si, estoy con PHP 7.1 ahora, pero módulos>actualizaciones y pagos>preferencias siguen dándome Error 500 en modo producción.
Hola Ibrahin,
Prueba desactivando los módulos que te generan el error. Estos avisos hacen referencia a los módulos " g_productinstagram, hideproduct y ganalytics
Renombra la carpeta de los módulos desde tu cpanel,
Ubica la carpeta public_html y en la raíz de tu sitio ingresa a la carpeta Modules
Dentro de ella, ubica la carpeta de los módulos y renombrarlos. Puedes agregarle por ejemplo nombrecarpet_OLD
Verifica si desactivando estos módulos todo funciona de forma correcta sin estar en modo depuración
Saludos
el problema es que si hago eso los módulos me van a dejar de funcionar, primero los voy a actualizar a ver que pasa...
también se me ocurre que esto pueda ser algún problema de permisos o algo así de los ficheros o carpetas en la raíz 644, 755, etc?
que opinas ?
Hola Ibrahim,
En ese caso intenta realizar la actualización de los módulos si tiene alguno pendiente, también puedes verificar los permiso y ver si con esto funciona.
Por ultimo si nada funciona, desactiva de forma temporal los módulos y verifica ya que este puede ser lo que te ocasione el error.
Saludos
karen, sabes donde se encuentran los permisos y los ficheros del backend de pagos>preferencias y de módulos>actualizaciones para ver que permisos tienen esas carpetas-ficheros.
muchas gracias !
Hola Ibrahim
Ingresa a tu cpanel y pincha en Administrador de archivo
Desde el ubica tu carpeta raíz y ingresa a Public_html luego ingresa a Modules y selecciona la carpeta del modulo que deseas verificar
Haz clic con el botón derecho del mouse .
Te aparecerá un menú, pincha en la opción change permissions se te abrirá una ventana emergente donde podrás ver los permisos de la carpeta y modificarlos si hace falta.
Saludos
genial, pero me refiero a como se llaman esos ficheros en mi Cpanel, el de pagos>preferencias y el de módulos>actualizaciones ??
Hola Ibrahim,
Ubica la carpeta por el nombre del modulo de esa forma sabrás cual es la que necesitas verificar.
Saludos
karen no son módulos los que me dan error 500 es al intentar entrar aquí en el backend:
y aquí:
Hola Ibrahim,
En este caso no creo sea un error de permisos, el error lo puede estar generando un modulo.
Te recomiendo que desactives los que te han marcado antes el problema, solo de forma temporal y verifiques si con ellos deshabilitados no te muestran el error.
Saludos
hola pepe, ya actualice el modulo de hideproduct
y aun no puedo entrar aquí por que me da error 500:
a ti aun te sale el error que me indicaste:
PHP Notice: Undefined variable: id_currency
in /home/santorin/public_html/modules/hideproduct/classes/HideproductConfiguration.php
espero tu respuesta
muchas gracias !