Jak aktywować uproszczone adresy URL Prestashop za pomocą pakietu ISPconfig + Nginx?

Procédure

Prezentacja

Niedawno zaktualizowaliśmy naszą ofertę VPS o pakiet ISPconfig działający na serwerze WWW Nginx zamiastApache. Wybór był podyktowany faktem, że jest on lekki i szybki.

Kiedy jednak wdrożyliśmy go w sklepie Prestashop, natknęliśmy się na jedno z ograniczeń Nginx: nie obsługuje on plików .htaccess.

W rezultacie nie można aktywować funkcji"uproszczonych adresów URL" z zaplecza, tak jak w przypadku Apache.

Przyjrzyjmy się, jak rozwiązać ten problem.

Połączenie przez SSH

Pierwszą rzeczą do zrobienia jest uzyskanie identyfikatorów SSH(Jak połączyć się jako root na dedykowanym serwerze VPS) i połączenie się z serwerem VPS.


Zmodyfikuj konfigurację Nginx

Edytuj plik /etc/nginx/sites-available/my_site.com.vhost za pomocą polecenia :

nano /etc/nginx/sites-available/my_site.com.vhost

Następnie dodaj następujące wiersze między znacznikami"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;
}


Ponowne uruchomienie usługi Nginx

Aby to zrobić, wystarczy użyć polecenia :

/etc/init.d/nginx restart

Testowanie funkcji "Uproszczone adresy URL"

Aktywuj funkcję "Uproszczone adresy URL" w swoim biurze Prestaphop (Preferencje => SEO i adresy URL):

Jak aktywować uproszczone adresy URL Prestashop za pomocą pakietu ISPconfig + Nginx?

Wpisz w przeglądarce adres URL: http: //mon_site.com/index.php?id_product=4&controller=product

Jak aktywować uproszczone adresy URL Prestashop za pomocą pakietu ISPconfig + Nginx?

staje się: http: //mon_site.com/robes-soiree/4-robe-imprimee.html

Jak aktywować uproszczone adresy URL Prestashop za pomocą pakietu ISPconfig + Nginx?

Przepisywanie adresów URL działa dobrze.

Oceń ten artykuł :

5/5 | 1 opinia

Ten artykuł był dla Ciebie przydatny ?

Article utileTak

Article non utileNie

MerciMerci ! N'hésitez pas à poser des questions sur nos documentations si vous souhaitez plus d'informations et nous aider à les améliorer.


Vous avez noté 0 étoile(s)

Podobne artykuły

3mn czytanie

Jak uzyskać dostęp do ISPConfig na moim dedykowanym serwerze VPS?

0mn czytanie

Jak utworzyć serwer DNS w ISPConfig na dedykowanym serwerze VPS?

0mn czytanie

Jak zmienić hasło do panelu ISPConfig 3?

1mn czytanie

Jak mogę zabezpieczyć dostęp do panelu ISPconfig za pomocą pliku .htaccess?


Zadaj pytanie zespołowi LWS i jego społeczności