在Mac OS X上使用nginx设置相当本地的开发URL

时间:2014-11-08 09:49:04

标签: django macos apache nginx dns

我有一个Django服务器设置,我可以从127.0.0.1:8000

访问

我刚刚在Mac OS X Yosemite上安装了nginx,可以访问“欢迎来到nginx'屏幕localhost:80

我希望能够在local.ingledow.co.uk上设置本地开发环境,但是当我访问该网址时,它会将我重定向到我的实际网站:david.ingledow.co.uk

我确实有一个带有DNSimple的通配符URL转发器,它会像这样重定向:

*.ingledow.co.uk> david.ingledow.co.uk

但我删除了它。

我已添加此CNAME:local.ingledow.co.uk> 127.0.0.1

这不应该影响我设置本地nginx服务器的方式。

那么,如何在Mac上创建一个nginx服务器,将我的127.0.0.1:8000 Django项目显示在自定义域(local.ingledow.co.uk)上。

这是我的nginx设置:

/usr/local/etc/nginx/nginx.conf中的默认Nginx配置

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

    # INCLUDES

    include /Users/dingledow/etc/nginx/*.conf;

}

ingledow.conf atUsers/dingledow/etc/nginx/ingledow.conf

server {
  listen       80;
  server_name  local.ingledow.co.uk;

  location / {
      root /Users/dingledow/Documents/Work/Ingledow/git/my_site2/;
      index index.html index.htm index.php;
      autoindex on;
  }
}

我不确定Apache是​​否与nginx冲突?或者我是否只是错误地设置了nginx?

1 个答案:

答案 0 :(得分:2)

使用注册商设置CNAME根本不会有任何帮助,您应该将其删除。

使这项工作的唯一方法是在/ etc / hosts编辑本地HOSTS文件并添加指向localhost的指针:

127.0.0.1. local.ingledow.co.uk   

然后你需要在端口80而不是8000上运行开发服务器,或者配置nginx以通过gunicorn或uwsgi运行你的网站 - 文档告诉你如何做到这一点。