2009-05-19 48 views
0

我有nginx重写在我的服务器上正常工作生产。nginx重写不工作(在Mac OS X上的乘客)

但是,当我试图在我的本地开发机器(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

找到了解决方案。我没有正确重新启动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 `' 
+0

我觉得更容易(在Linux反正)做了须藤的/ opt/nginx的/ sbin/nginx -s停止而不是杀死。 – Frozenskys 2009-07-23 22:01:41