【发布时间】:2014-06-19 05:33:41
【问题描述】:
尝试设置处理 2 个域的 Nginx 时遇到了一些问题。虽然我的两个域设置在静态 html 处理中正常工作,但尝试在 Nginx 后面推进并启动两个 python 应用程序。我尝试了一些不同的 wsgi 容器和不同的微框架,但问题是 Nginx 无法处理虚拟主机,而是在两个域地址上只为一个应用程序提供服务。
这里是 Nginx 配置文件:
user www-data;
worker_processes 8;
pid /var/run/nginx.pid;
events {
worker_connections 768;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
server_names_hash_bucket_size 64;
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
gzip on;
gzip_disable "msie6";
server {
listen 80;
server_name www.domainA.com;
root /var/www/domainA.com;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Originating-IP $remote_addr;
proxy_set_header HTTP_REMOTE_ADDR $remote_addr;
proxy_set_header REMOTE_ADDR $remote_addr;
proxy_set_header CLIENT_IP $remote_addr;
proxy_pass http://127.0.0.2:7000;
}
}
server {
listen 80;
server_name www.domainB.com;
root /var/www/domainB.com;
location / {
... ... blah blah...same story...except this proxy pass.....
proxy_pass http://127.0.0.1:5000;
}
}
}
有什么帮助吗?
编辑:
刚刚尝试将空服务器块添加为第一个块,它返回 404。
【问题讨论】:
-
可能你需要为 www.domainB.com 使用不同的监听端口
-
您确定在配置更改后重新启动了 nginx 吗?您访问的是
www.domainB.com,而不仅仅是domainB.com? -
你能告诉我们你的相关python代码吗?
标签: python nginx flask cherrypy uwsgi