我在生产中的服务器上有正确重写的nginx。
但是当我尝试在我的本地开发机器(mac)上设置相同的规则时,重写似乎不起作用。
我希望“universitytutor.local”重定向到“www.universitytutor.local”
这是我的nginx.conf
的相关部分 server{
listen 80;
server_name universitytutor.local;
rewrite ^/(.*) http://www.universitytutor.local/$1 permanent;
}
server {
listen 80;
server_name www.universitytutor.local *.universitytutor.local;
root /Users/barmstrong/NetBeansProjects/universitytutor/public; # <--- be sure to point to 'public'!
passenger_enabled on;
rails_env development;
}
无论我输入“universitytutor.local”还是“www.universitytutor.local”,页面都会正确加载,并且不会重定向。
我有* .universitytutor.local因为我在不同城市使用子域名所以我需要这个,但我想要一个空白的子域名重定向到“www”。
有什么想法吗?
答案 0 :(得分:0)
找到解决方案。我没有正确地重新启动Nginx,所以它没有收到更改。卫生署!
你可以像这样重启
sudo kill `cat /opt/nginx/logs/nginx.pid `
sudo /opt/nginx/sbin/nginx
或将其添加到.bashrc以便于使用
alias nginx_restart='nginx_stop; nginx_start'
alias nginx_start='sudo /opt/nginx/sbin/nginx'
alias nginx_stop='sudo kill `cat /opt/nginx/logs/nginx.pid `'