我需要一个基本的重定向规则,因此如果有人输入:www.site.com将被重定向到site.com。我需要它在浏览器中看起来整洁干净。
我在我的nginx服务器块中试过这个:
# trying redirects from http:// www.site.com to http:// site.com
if ($host = "www.site.com") {
rewrite ^ $scheme://site.com$uri permanent;
}
...
location / {
try_files $uri $uri/ @modx-rewrite /index.php?/$request_uri;
location ~ .php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
但是由于某些原因,我没有找到服务器,并且没有找到服务器错误"。 它还在我的地址中添加了http S.
如果没有这些规则,我的网站就可以正常运行并通过https运行,并且网页通常会通过https:// site.com链接打开。
感谢。
注意:我故意在地址中的代码snipets中添加了几个空格,否则stackoverflow不会让我发布它。
答案 0 :(得分:1)
简化:
server {
listen 80;
server_name example.com;
location / { .........; }
}
server {
listen 80;
server_name www.example.com;
location / { return 301 http://example.com$request_uri; }
}