我有一个在 AWS EC2 实例上运行的 nginx 1.4.5 服务器。我有两个 conf 文件:default.conf
和myapp.conf
. default.conf
听 localhost,然后myapp.conf
听myapp.mydomain.com
.
但是我发现即使我myapp.mydomain.com
在浏览器中输入,它总是会加载default.conf
. 我已经更改了log_format
在nginx.conf
文件中添加一个"$server_name"
字段来检查每个请求的服务器名称。我发现它总是localhost
。
有人对此有任何想法吗?
配置信息更新
这nginx.conf
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
...
}
这myapp.conf
server {
listen 80;
server_name myapp.mydomain.com;
access_log /var/log/nginx/myapp.log;
location / {
add_header P3P 'CP="CAO PSA OUR"';
proxy_pass http://127.0.0.1:8080/myapp/;
set $ssl off;
if ($scheme = https) {
set $ssl on;
}
proxy_set_header X-Forwarded-Ssl $ssl;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}
是的,我在两个防火墙后面,一个是 iptable,另一个是 AWS 内置安全组