Jump to content

Enlaces amigables no funcionan


laurahdk2

Recommended Posts

Necesito ayuda.

Estoy trabajando en un prestashop 1.6 y los enlaces no funcionan cuando activo las url amigables.

Estuve leyendo por el foro y vi que regenerando el .htaccess por uno limpio se solucionaba, pero en mi caso no funciona.

¿Alguien puede ayudarme?

Antes trabajaba bajo la versión de Prestashop 1.5 en el servidor, y paralelamente instale de 0 la versión 1.6. Cuando la termine la traspase a la raíz. No se si por ahi puede venir este error.

Gracias¡

Link to comment
Share on other sites

Buenos días,

 

Ya ha pasado en varias ocasiones con otros usuarios del foro que han solucionado su problema copiando un fichero .htaccess existente, adjunto un .htaccess de ejemplo de la versión 1.6.x:

 

--------------------------------------------------------------------------------------------------------------------------------------------

 

# ~~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
 
<IfModule mod_rewrite.c>
<IfModule mod_env.c>
SetEnv HTTP_MOD_REWRITE On
</IfModule>
 
RewriteEngine on
RewriteRule . - [E=REWRITEBASE:/]
RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]
 
# Images
RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.jpg [L]
RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.jpg [L]
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]
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]
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]
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]
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]
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]
RewriteRule ^c/([0-9]+)(\-[\.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2$3.jpg [L]
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]
</IfModule>
 
AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/x-font-woff .woff
 
#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
 

 

--------------------------------------------------------------------------------------------------------------------------------------------

Link to comment
Share on other sites

Buenos días,

 

Ya ha pasado en varias ocasiones con otros usuarios del foro que han solucionado su problema copiando un fichero .htaccess existente, adjunto un .htaccess de ejemplo de la versión 1.6.x:

 

--------------------------------------------------------------------------------------------------------------------------------------------

 

# ~~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
 
<IfModule mod_rewrite.c>
<IfModule mod_env.c>
SetEnv HTTP_MOD_REWRITE On
</IfModule>
 
RewriteEngine on
RewriteRule . - [E=REWRITEBASE:/]
RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]
 
# Images
RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.jpg [L]
RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.jpg [L]
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]
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]
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]
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]
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]
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]
RewriteRule ^c/([0-9]+)(\-[\.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2$3.jpg [L]
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]
</IfModule>
 
AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/x-font-woff .woff
 
#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
 

 

--------------------------------------------------------------------------------------------------------------------------------------------

Gracias por responder.

Eso ya lo intente ayer sin resultado, no obstante, hoy lo he vuelto a probar y sigue sucediendo lo mismo. Cuando activo los enlaces amigables en cualquier página me salta el error 404

Link to comment
Share on other sites

Buenos días,

 

¿No tendrás ningún módulo de SEO instalado, verdad?

 

En caso afirmativo prueba a desinstalarlo o eliminarlo directamente.

 

¿Tienes Prestashop en la carpeta raíz o en alguna subcarpeta?

Hola,

No tengo ningún modulo de SEO instalado.

El prestashop se encuentra en la carpeta raíz

Espero que puedas ayudarme porque llevo cuatro días con esto y ya no se que hacer.

Rectifico. Tenia un modulo de Seo, no estaba instalado pero aún asi lo borre, ahora directamente no me aparece el error 404, se queda la pantalla en blanco con el favicon diferente.

Gracias

Edited by laurahdk2 (see edit history)
Link to comment
Share on other sites

Buenos días,

 

¿Has probado a habilitar el modo debug de Prestashop para ver que error devuelve?
 
De esta forma en vez de mostrar la página en blanco, mostrará un mensaje de error que indicará cuál es el problema.
 
Tienes que modificar el fichero:
 
/config/defines.inc.php
 
Cambiar esta línea:
 
define('_PS_MODE_DEV_', false);
 
Por esta otra:
 
define('_PS_MODE_DEV_', true);
Link to comment
Share on other sites

 

Buenos días,

 

¿Has probado a habilitar el modo debug de Prestashop para ver que error devuelve?
 
De esta forma en vez de mostrar la página en blanco, mostrará un mensaje de error que indicará cuál es el problema.
 
Tienes que modificar el fichero:
 
/config/defines.inc.php
 
Cambiar esta línea:
 
define('_PS_MODE_DEV_', false);
 
Por esta otra:
 
define('_PS_MODE_DEV_', true);

 

Lo hice y el error que me aparece es este:

Fatal error: Call to a member function dispatch() on a non-object in /var/www/vhosts/plantroshops.es/httpdocs/override/classes/controller/Controller.php on line 12

 

¿Sabes a que puede ser debido? Perdona, pero soy un poco novata en esto.

Link to comment
Share on other sites

Buenas,

 

¿Después de eliminar el módulo has probado a regenerar el fichero .htaccess? Desde "Preferencias", "SEO & URLS", "Guardar".

Habría que ver la configuración existente, módulos instalados, sin más información es ir "dando palos de ciego".

Link to comment
Share on other sites

Buenas,

 

¿Después de eliminar el módulo has probado a regenerar el fichero .htaccess? Desde "Preferencias", "SEO & URLS", "Guardar".

 

Habría que ver la configuración existente, módulos instalados, sin más información es ir "dando palos de ciego".

Realmente la página esta limpia en cuanto a modulos, los que vienen con prestashop más alguno de la caixa y paypal

Si, probé a regenerar el fichero, pero sigue pasando lo mismo.

Gracias de todas formas

Link to comment
Share on other sites

¿Dónde tienes alojada la tienda?

 

Lo tengo con un hosting externo. ¿Me debería poner en contacto con ellos?

 

Puede ser que esto se deba a que aún conservo la carpeta donde empece a trabajar con la versión 1.6 de prestashop? paralelamente tenía la 1.5 activada hasta que termine la nueva y lo traspase al directorio raiz.

Edited by laurahdk2 (see edit history)
Link to comment
Share on other sites

  • nadie locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...