Yosoyyo Posted December 26, 2013 Share Posted December 26, 2013 (edited) La tienda funcionaba correctamente, pero, hoy al elegir qué idiomas no quiero que aparezcan, destildándolos, de repente la tienda me ha dado este error: Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator at webmaster@midominio to inform them of the time this error occurred, and the actions you performed just before this error. More information about this error may be available in the server error log. Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request. He pasado a la compañía del hosting el siguiente artículo: http://www.prestashop.com/blog/en/the-500-internal-server-error-explained-solved/ Primero me han desactivado el archivo .htaccess y se ha visualizado la tienda, pero al volver a intentar desactivar varios idiomas, vuelve a aparecer el mismo error. Los del Hosting me hancreado un segundo archivo .htacess y ha pasado lo mismo. No entiendo cómo al principio anteayer puedo estar configurando sin ningún problema y hoy me encuentro con ésto. Ah, el tiempo de ejecución ya lo tengo a 120 y los permisos de las carpetas son correctos. Total, la compañía del Hosting dice que os pregunte ¿cómo debe estar configurado el archivo htacess para que funcione correctamente con Prestashop? Porque es como si Prestashop esstuviera intentando crear cambios en el archivo htaccess. Edited December 27, 2013 by Yosoyyo (see edit history) Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 No acabo de entender lo siguiente que he encontrado: http://www.prestashop.com/forums/topic/283209-solved-htaccess-generates-error-500/ ¿Podría ayudarme ésto? La versión que uso es la 1.5.6.0 Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 He encontrado este vídeo http://www.youtube.com/watch?v=hJ1AdoZbwCs Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 He probado de hacer lo del vídeo. Borrando los dos archivos que tenían que me había dejado los del Hosting (antes me he cuardado una copia) htaccess-bak y htaccess-bak2. Pero no se me visualiza ni en BackOffice ni el FrontOficce y se ha creado solo el archivo .htaccess con la siguiente información # ~~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 <IfModule mod_rewrite.c> SetEnv HTTP_MOD_REWRITE On RewriteEngine on RewriteCond %{HTTP_HOST} ^www.MIDOMINIO$ RewriteRule . - [E=REWRITEBASE:/CARPETADEMITIENDA/] RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L] # AlphaImageLoader for IE and fancybox RewriteCond %{HTTP_HOST} ^www.MIDOMINIO$ RewriteRule ^images_ie/?([^/]+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 [L] </IfModule> #If rewrite mod isn't enabled ErrorDocument 404 /CARPETADEMITIENDA/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 ¿Qué debo hacer? Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 Siguiendo este artículo: http://nemops.com/debug-prestashop-error-500/ So, just head to config/ and open up defines.inc.php. Then, set _PS_MODE_DEV_ to TRUE as shown below ? 1 2 3 define('_PS_MODE_DEV_', true); define('_PS_DEBUG_PROFILING_', false); define('_PS_MODE_DEMO_', false); It should be at line 28. He sustituído la línea donde dice _PS_MODE_DEV_ to TRUE por 1 define('_PS_MODE_DEV_', true); 2 define('_PS_DEBUG_PROFILING_', false); 3 define('_PS_MODE_DEMO_', false); Y ahora se visualiza el error, dice: Notice: Constant _PS_DEBUG_PROFILING_ already defined in /config/defines.inc.php on line 47 Notice: Constant _PS_MODE_DEMO_ already defined in /config/defines.inc.php on line 48 Warning: Cannot modify header information - headers already sent by (output started at /config/defines.inc.php:47) in /classes/controller/AdminController.php on line 1229 Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 La versión que tengo de PHP es 5.4.21 y la de Apache 2.4.6 Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 A ver... copio cada ínea. /config/defines.inc.php on line 47 define('_PS_DEBUG_PROFILING_', false); /config/defines.inc.php on line 48 define('_PS_MODE_DEMO_', false); /classes/controller/AdminController.php on line 1229 header('Location: '.$this->redirect_after); ¿Qué tengo que hacer? Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 Adjunto foto de lo que me aparece en el BackOfiice, creo que es el motivo al problema que tengo del error 500, porque a veces si borro el archivo .htaccess, vuelve a visualizarse la web y a veces vuelve a irse. Deduzco que el problema está en que no se puede reescribir automáticamente el archivo .htaccess y debo configurar esta opción de páginas amigables. ¿Qué tengo que hacer para subsanar el error que aparece en amarillo en la foto? Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 (edited) Estoy intentando solucionarlo con el siguiente hilo http://www.prestashop.com/forums/topic/190579-reescritura-de-direcciones-url-mod-rewrite-15/ Me pasa esto. Tengo activado el mod_rewrite, pero me da error 500 Intento seguir el consejo de supraonline que es éste: Cambiar lo siguiente:Override/classes/tools.phpSobre escribir esto: <?php class Tools extends ToolsCore { public static function apacheModExists($name) { return true; } } ?> Pero... no me aparece el archivo tools.php en las carpetas que indica ¿Dónde está en la versión 1.5.6.0? Edited December 26, 2013 by Yosoyyo (see edit history) Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 Mmm... no lo entiendo, porque en el archivo .htaccess tengio activado el mod_rewrite así: <IfModule mod_rewrite.c> SetEnv HTTP_MOD_REWRITE On RewriteEngine on Los del Hosting me dicen que Prestashop debe tener algún plugin que me da error. Link to comment Share on other sites More sharing options...
Sergio Ruiz Posted December 26, 2013 Share Posted December 26, 2013 (edited) Siguiendo este artículo: http://nemops.com/debug-prestashop-error-500/ So, just head to config/ and open up defines.inc.php. Then, set _PS_MODE_DEV_ to TRUE as shown below ? 1 2 3 define('_PS_MODE_DEV_', true); define('_PS_DEBUG_PROFILING_', false); define('_PS_MODE_DEMO_', false); It should be at line 28. He sustituído la línea donde dice _PS_MODE_DEV_ to TRUE por 1 define('_PS_MODE_DEV_', true); 2 define('_PS_DEBUG_PROFILING_', false); 3 define('_PS_MODE_DEMO_', false); Y ahora se visualiza el error, dice: Notice: Constant _PS_DEBUG_PROFILING_ already defined in /config/defines.inc.php on line 47 Notice: Constant _PS_MODE_DEMO_ already defined in /config/defines.inc.php on line 48 Warning: Cannot modify header information - headers already sent by (output started at /config/defines.inc.php:47) in /classes/controller/AdminController.php on line 1229 Comentas que tras habilitar el reporte de errores: (http://www.prestashop.com/forums/topic/232477-%C2%BFqu%C3%A9-hacer-cuando-se-queda-la-pantalla-en-blanco-en-prestashop/) ¿Te han salido esos errores? ¿Pero esos errores te salen siempre, siempre? ¿Es que tienes dos veces duplicada esta linea: define('_PS_DEBUG_PROFILING_', false); define('_PS_MODE_DEMO_', false); en el defines.inc.php? ¿Y dices que si desactivas las urls amigables puedes navegar con normalidad? ¿Tu hosting te ha confirmado que tiene habiltado el mod_rewrite, (la activacion del mod_rewrite termina dependiendo del hosting) ? Edited December 26, 2013 by Sergio Ruiz (see edit history) Link to comment Share on other sites More sharing options...
Sergio Ruiz Posted December 26, 2013 Share Posted December 26, 2013 (edited) Comentas que tras habilitar el reporte de errores: (http://www.prestashop.com/forums/topic/232477-¿qué-hacer-cuando-se-queda-la-pantalla-en-blanco-en-prestashop/) ¿Te han salido esos errores? ¿Pero esos errores te salen siempre, siempre? ¿Es que tienes dos veces duplicada esta linea: define('_PS_DEBUG_PROFILING_', false); define('_PS_MODE_DEMO_', false); en el defines.inc.php? ¿Y dices que si desactivas las urls amigables puedes navegar con normalidad? ¿Tu hosting te ha confirmado que tiene habiltado el mod_rewrite, (la activacion del mod_rewrite termina dependiendo del hosting) ? He probado de hacer lo del vídeo. Borrando los dos archivos que tenían que me había dejado los del Hosting (antes me he cuardado una copia) htaccess-bak y htaccess-bak2. Pero no se me visualiza ni en BackOffice ni el FrontOficce y se ha creado solo el archivo .htaccess con la siguiente información # ~~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 <IfModule mod_rewrite.c> SetEnv HTTP_MOD_REWRITE On RewriteEngine on RewriteCond %{HTTP_HOST} ^www.MIDOMINIO$ RewriteRule . - [E=REWRITEBASE:/CARPETADEMITIENDA/] RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L] # AlphaImageLoader for IE and fancybox RewriteCond %{HTTP_HOST} ^www.MIDOMINIO$ RewriteRule ^images_ie/?([^/]+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 [L] </IfModule> #If rewrite mod isn't enabled ErrorDocument 404 /CARPETADEMITIENDA/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 ¿Qué debo hacer? Indicar tambien que si activas las urls amigables y te genera solo ese .htaccess no es completo, deberia tener mas lineas con las urls activadas en el panel de la tienda. ------------------------ Edited December 26, 2013 by Sergio Ruiz (see edit history) Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 Gracias Sergio. Te cuento... Después de muchas horas he encontrado un código para el archivo .htaccess que me semi funciona, es el siguiente: # enable symbolic links Options +FollowSymLinks <IfModule mod_rewrite.c> RewriteEngine on RewriteBase / </IfModule> # ~~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 <IfModule mod_rewrite.c> # Disable Multiviews Options -Multiviews RewriteEngine on RewriteRule ^api/?(.*)$ webservice/dispatcher.php?url=$1 [QSA,L] # Images RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ img/p/$1-$2$3$4.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^([0-9]+)\-([0-9]+)(-[0-9]+)?/.+\.jpg$ img/p/$1-$2$3.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ img/p/$1/$1$2$3.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ img/p/$1/$2/$1$2$3$4.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ img/p/$1/$2/$3/$1$2$3$4$5.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.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$ 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} ^www.yourwebsite.com$ RewriteRule ^c/([0-9]+)(\-[_a-zA-Z0-9-\.*]*)(-[0-9]+)?/.+\.jpg$ img/c/$1$2$3.jpg [L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^c/([a-zA-Z-]+)(-[0-9]+)?/.+\.jpg$ img/c/$1$2.jpg [L] # Dispatcher RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^.*$ - [NC,L] RewriteCond %{HTTP_HOST} ^www.yourwebsite.com$ RewriteRule ^.*$ index.php [NC,L] </IfModule> <IfModule mod_expires.c> 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" </IfModule> FileETag INode MTime Size <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript </IfModule> #If rewrite mod isn't enabled ErrorDocument 404 /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 <IfModule mod_rewrite.c> RewriteRule ^youtube/(.*)$ http://www.youtube.com/$1 [L] </IfModule> He copiado este códeigo tal cual al archivo .htaccess y he substituído el valor www.yourwebsite.com Por el dominio de mi web y el valor ErrorDocument 404 /index.php?controller=404 por ErrorDocument 404 /MICARPETADEPRESTASHOP/index.php?controller=404 En mi caso la página principal no es el archivo index.php de Prestashop, sino un archivo html, o sea que la web que estoy trabajando es dominioweb/carpetatiendaPrestashop/index.php Por lo que no acabo de saber adaptar el código encontrado a mi necesidad. Ahora con los cambios hechos, puedo visualizar la tienda pero dando el siguiente error: Página no disponibleLo sentimos, la página no se encuentra disponible. Para buscar un artículo, por favor, indique su nombre en el siguiente campo: Busque en nuestra tienda: Te copio el código que se me genera por defecto en el archivo .htaccess, para que puedas decirme qué línea más debo adaptar en el nuevo código encontrado. Por ejemplo # ~~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 <IfModule mod_rewrite.c> SetEnv HTTP_MOD_REWRITE On RewriteEngine on RewriteCond %{HTTP_HOST} ^www.midominio.com$ RewriteRule . - [E=REWRITEBASE:/carpetaquecontieneprestashop/] RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L] # AlphaImageLoader for IE and fancybox RewriteCond %{HTTP_HOST} ^www.midominio.com$ RewriteRule ^images_ie/?([^/]+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 [L] </IfModule> #If rewrite mod isn't enabled ErrorDocument 404 /carpetaquecontieneprestashop/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 El código que me da por defecto el .htaccess del RewriteRule es: RewriteRule . - [E=REWRITEBASE:/carpetaquecontieneprestashop/] Pero en el código que he encontrado no aparece ¿podría añadir ese código? pero ¿dónde? Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 (edited) Sí, activo URLS amigables. Edited December 26, 2013 by Yosoyyo (see edit history) Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 O sea, con he realizado con el código éste que he encontrado: 1.- Visualizo el BackOffice de la tienda, que antes no podía 2.- El FrontOffice aparece sólo mostrando la parte superior de la tienda y señalando el error 404 Gracias por tu ayuda, Sergio. Link to comment Share on other sites More sharing options...
Sergio Ruiz Posted December 26, 2013 Share Posted December 26, 2013 O sea, con he realizado con el código éste que he encontrado: 1.- Visualizo el BackOffice de la tienda, que antes no podía 2.- El FrontOffice aparece sólo mostrando la parte superior de la tienda y señalando el error 404 Gracias por tu ayuda, Sergio. ¿Cuando desactivas y vuelves activar las urls amigables en la pestaña Preferencias -> SEO y URLS solo te genera el segundo bloque de codigo que me has pasado? Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 Ahora he refrescado y en la direc dominio.com/carpetadeprestashop/index.php al entrar aparece el siguiente error [Debug] This page has movedPlease use the following URL instead: http://www.dominio.com/carpetadeprestashop/ Y al clicar en la dirección se abre bien el FrontOffice Tengo que conseguir que se abra directamente y no aparte. Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 ¿Cuando desactivas y vuelves activar las urls amigables en la pestaña Preferencias -> SEO y URLS solo te genera el segundo bloque de codigo que me has pasado? Sí, el código corto es el que me salía sólo antes de encontrar el nuevo código para el archivo .htaccess Link to comment Share on other sites More sharing options...
Sergio Ruiz Posted December 26, 2013 Share Posted December 26, 2013 (edited) Sí, el código corto es el que me salía sólo antes de encontrar el nuevo código para el archivo .htaccess Pues si comentas que tienes los permisos correctos de los ficheros, al activar las urls amigables te deberia regenerar el .htaccess de forma completa y automatica sin tener tu que editar nada. (a mi siempre me lo ha generado correcto con todas sus lineas) y no incompleto. Edited December 26, 2013 by Sergio Ruiz (see edit history) Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 1.- Mmm... Ahora al refrescar el FrontOffice lo que sale es lo que te he comentado antes: Ahora he refrescado y en la direc dominio.com/carpetadeprestashop/index.php al entrar aparece el siguiente error [Debug] This page has movedPlease use the following URL instead: http://www.dominio.c...tadeprestashop/ Y al clicar en la dirección se abre bien el FrontOffice, pero no se ven las fotos de los productos. Tengo que conseguir que se abra directamente y no aparte y que se vean las fotos de los productos. Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 26, 2013 Author Share Posted December 26, 2013 Ahora si vuelvo a refrescar me da el error de antes: Internal Server ErrorThe server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator at webmaster@midominio to inform them of the time this error occurred, and the actions you performed just before this error. More information about this error may be available in the server error log. Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request. No lo entiendo , llevo todo el día con esto. ¿Cómo puedo acceder al server error log? Link to comment Share on other sites More sharing options...
Yosoyyo Posted December 27, 2013 Author Share Posted December 27, 2013 Al final he borrado la carpeta que contenía el Prestashop y he instalado la aplicación de Prestashop desde CPanel usando el archivo que viene por defecto en el hosting. De momento puedo visualizar el BackOffice y el FrontOffice. Link to comment Share on other sites More sharing options...
Recommended Posts