Próbuję uzyskać adresy URL SEO działające w wielu sklepach w OpenCart.Włącz adresy URL SEO w wielu sklepach i subdomenach na OpenCart przy użyciu Nginx
Mam dwa sklepy w admin
http://www.shop.com (default)
http://m.shop.com
URL SEO pracować dla http://www.shop.com Ale oni zwracają not_found.tpl (strona 404) dla http://m.shop.com
Działa to jednak:
http://m.shop.com/index.php?route=product/product&path=68&product_id=52
SEO mądre, powinno być
/index.php?route=product/product&path=68&product_id=52
http://www.shop.com/product-title
http://m.shop.com/product-title (404 returned)
Używam NGINX. To jest config:
www.shop.com
server {
server_name www.shop.com;
listen 80;
root /var/www/www.shop.com/;
index index.php index.html;
location /image/data {
autoindex on;
}
location/{
try_files $uri @opencart;
}
location @opencart {
rewrite ^/(.+)$ /index.php?_route_=$1 last;
}
location ~ \.php$ {
try_files $uri =404;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
m.shop.com
server {
server_name m.shop.com;
listen 80;
root /var/www/www.shop.com/;
index index.php index.html;
location /image/data {
autoindex on;
}
location/{
try_files $uri @opencart;
}
location @opencart {
rewrite ^/(.+)$ /index.php?_route_=$1 last;
}
location ~ \.php$ {
try_files $uri =404;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Jeśli się nie mylę, te ustawienia wyglądają dokładnie tak samo. Dlaczego po prostu nie skorzystasz z jednej sekcji 'server {...}' i dodasz 'm.shop.com' do dyrektywy' server_name'? Co do samego błędu, z góry mojej głowy mam tylko dalekie spekulacje: czy twoja konfiguracja 'm.shop.com' jest naprawdę aktywna? Czasami są zorganizowane w jednym katalogu z plikami konfiguracyjnymi, a tam, gdzie ma się umieścić dowiązanie symboliczne. Link jest tam, prawda? – Carsten
Link jest tam .. strona działa .. strona m.shop.com działa i pokazuje inny sklep OpenCart - adresy URL SEO nie działają jednak. – TheBlackBenzKid
Nie mam doświadczenia z Open Cartem, jednak jestem ciekawy, czy musisz to zrobić poprzez nginx? Jeśli nie, po prostu zmodyfikuj plik .htaccess i użyj przeróbki mod. Oto przykład, który znalazłem w jednym sklepie [Przykład] (http://www.templatemonster.com/help/files/OpenCart/opencart_seo_urls.htm). Może to będzie pomocne. – Dropzilla