Постоянное перенаправление Nginx (без WWW в WWW) не работает

Привет, ребята! Я хочу, чтобы все мои URL-запросы, не являющиеся WWW, были перенесены навсегда, а также переписаны в WWW, и я также пытался следовать существующим решениям.
Nginx без www для www и www для no-www
но все же это не сработало для меня.

например Я хочу, чтобы example.com или example.com/* переписали на www.example.com или www.example.com/*

Я использую PHP-FPM с nginx и memcache

ниже мой конфиг

server {
listen 80;
server_name abc.com;
return 301 http://www.example.com$request_uri;
}

server {
listen 80;
server_name www.example.com;

root /srv/www/abc;
index index.php index.html index.htm;
.......
}

Ниже мой ответ локон

neel:~ nilesh$ curl -I http://example.com
HTTP/1.1 200 OK
Server: nginx/1.4.6 (Ubuntu)
Date: Fri, 21 Aug 2015 19:00:54 GMT
Content-Type: text/html; charset=utf-8
Connection: keep-alive
Vary: Accept-Encoding
X-Powered-By: PHP/5.5.9-1ubuntu4.11
X-Drupal-Cache: HIT
Etag: "1440178291-0"Content-Language: en
X-Generator: Drupal 7 (http://drupal.org)
Link: <http://example.com/>; rel="canonical",<http://example.com/>; rel="shortlink"Cache-Control: public, max-age=1800
Last-Modified: Fri, 21 Aug 2015 17:31:31 +0000
Expires: Sun, 19 Nov 1978 05:00:00 GMT
Vary: Cookie
Vary: Accept-Encoding

1

Решение

Я наконец решил свою проблему. Я проверил свой nginx.conf, и он указывал на / etc / nginx / sites-enabled и /etc/nginx/conf.d

мой nginx.conf->

 ##
# Virtual Host Configs
##
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;

Наконец, я скопировал свой файл с сайтов, доступных в папку сайтов с включенным. на самом деле я держал это синхронизировано.

ниже приведен код, который я использовал под моим тегом сервера

server {
listen 80;
server_name example.com;
return 301 $scheme://www.example.com$request_uri;
}

server {
listen 80;
server_name www.example.com;
#listen [::]:80 default_server ipv6only=on;
root /srv/www/example;
#rest config goes below

…….

Теперь весь мой трафик без www 301 постоянно перемещается и переписывается на www с указанным выше кодом.

Я позвонил не на www и получил следующий правильный ответ.

neel:~ nilesh$ curl -I http://example.com
HTTP/1.1 301 Moved Permanently
Server: nginx/1.4.6 (Ubuntu)
Date: Thu, 27 Aug 2015 08:39:38 GMT
Content-Type: text/html
Content-Length: 193
Connection: keep-alive
Location: http://www.example.com/
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]