2015-08-21 1 views
1

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

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

Я бег PHP-FPM с Nginx и кэшем

ниже моя конфигурация

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 
+0

Вы пытались дать '-L' или' -location' завиток? Причина не будет, если вы этого не сделаете. –

+0

Я пробовал, но -L просто распечатывает html. Хорошо. Я возвращаю заголовки, и если бы конфигурация работала, он возвращался навсегда. – Neel

+0

Тогда это ваш локальный env или жить? Единственное, что приходит ко мне, если это live dns, может привести к чему-то подобному. –

ответ

1

я, наконец, решить мою проблему. Я проверил nginx.conf и это указывает на/и т.д./Nginx/сайтов с поддержкой и /etc/nginx/conf.d

мой nginx.conf->

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

Я наконец скопирована мой файл с сайтов - доступен для сайтов с папками. infact Я продолжал его синхронизировать.

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

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/