Cómo activar las URL simplificadas de Prestashop con mi paquete ISPconfig + Nginx

Procédure

Presentación

Recientemente hemos actualizado nuestras ofertas de VPS para incluir un paquete ISPconfig que se ejecuta en el servidor web Nginx en lugar deApache. La elección se basó en el hecho de que es ligero y rápido.

Sin embargo, una vez que lo implementamos con una tienda Prestashop, nos encontramos con una de las limitaciones de Nginx: el hecho de que no admite archivos .htaccess.

Como resultado, no puedes activar la función"URLs simplificadas" desde tu back office, como sí podías hacer con Apache.

Veamos cómo solucionar este problema.

Conexión vía SSH

Lo primero que debe hacer es hacerse con sus identificadores SSH(Cómo conectarse como root en un servidor VPS dedicado) y conectarse a su VPS.


Modificar la configuración de Nginx

Edite el archivo /etc/nginx/sitios-disponibles/mi_sitio_web.com.vhost con el comando :

nano /etc/nginx/sitios-disponibles/mi_sitio.com.vhost

A continuación, añada las siguientes líneas entre las etiquetas"server {}":

location / {
rewrite ^/api/?(.*)$ /webservice/dispatcher.php?url=$1 last;
rewrite ^/([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$1$2.jpg last;
rewrite ^/([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$1$2$3.jpg last;
rewrite ^/([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$3/$1$2$3$4.jpg last;
rewrite ^/([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.jpg last;
rewrite ^/([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.jpg last;
rewrite ^/([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.jpg last;
rewrite ^/([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.jpg last;
rewrite ^/([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.jpg last;
rewrite ^/c/([0-9]+)(-[_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ /img/c/$1$2.jpg last;
rewrite ^/c/([a-zA-Z-]+)(-[0-9]+)?/.+\.jpg$ /img/c/$1.jpg last;
rewrite ^/([0-9]+)(-[_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ /img/c/$1$2.jpg last;
try_files $uri $uri/ /index.php?$args;
}


Reiniciar el servicio Nginx

Para ello, basta con utilizar el comando :

/etc/init.d/nginx restart

Probar la función "URLs simplificadas

Active la función "URLssimplificadas" desde su backoffice Prestaphop (Preferencias => SEO & URLs):

Cómo activar las URL simplificadas de Prestashop con mi paquete ISPconfig + Nginx

En su navegador la URL: http: //mon_site.com/index.php?id_product=4&controller=product

Cómo activar las URL simplificadas de Prestashop con mi paquete ISPconfig + Nginx

se convierte en: http: //mon_site.com/robes-soiree/4-robe-imprimee.html

Cómo activar las URL simplificadas de Prestashop con mi paquete ISPconfig + Nginx

La reescritura de URL funciona bien.

help.lws.net/a/655
¿Le ha resultado útil este artículo?

Sí

No

Leído 27 076 veces

¡Gracias! No dude en hacer preguntas sobre nuestra documentación si desea más información y ayudarnos a mejorarla.

Artículos similares

¿Tiene una pregunta sobre este artículo?

Hágala al equipo de LWS y a la comunidad. La respuesta se publica tras la moderación.

Formule una pregunta al equipo de LWS y a su comunidad

RGPD: Responsable: LWS-Ligne Web Services. Finalidad: moderación y publicación pública de su pregunta, posible aviso de una respuesta. Base jurídica: consentimiento (art. 6.1.a RGPD). Conservación de los correos: 90 días tras el aviso, 12 meses como máximo sin respuesta. Para ejercer sus derechos, consulte la sección RGPD de nuestras condiciones generales.