我有一台带有 nginx 1.2.1 的 Ubuntu 11.10 服务器,假设我的域名是:domain.com Nginx 用作反向代理:redmine.domain.com => 指向端口 3000 上的 webrick redmine svn.domain.com => 指向 apache2 端口 8080 domain.com、www.domain.com 和所有域(等:abc.com、def.com、ghi.com)=> php-fastcgi 端口 9000
您可能想知道为什么我必须接受所有域名(abc.com,def.com,ghi.com),是的,这是我们的服务,允许客户在我们的多域名应用程序中使用他们的域名。
但问题是:当我使用 abc.com (在我的笔记本电脑上的文件主机上添加一条记录) 访问我的服务器时,nginx 将请求重定向到我们的 redmine。我希望 nginx 重定向到类似 php-fastcgi 的配置。
这是我在 Nginx 上的配置:(/etc/nginx/sites-enabled/)
Redmine
server {
listen 80;
server_name redmine.sieuthimoi.vn;
access_log /var/log/nginx/access.log;
location / {
auth_basic "Not Allow Here";
auth_basic_user_file /etc/nginx/htpasswd;
proxy_pass http://127.0.0.1:3000;
include /etc/nginx/proxy.conf;
}
}
和 PHP-FastCgi
server {
#listen 80; ## listen for ipv4; this line is default and implied
#listen [::]:80 default_server ipv6only=on; ## listen for ipv6
root /usr/share/nginx/www/site;
index index.php index.htm index.html;
# Make site accessible from http://localhost/
server_name domain.com _;
location ~ .php$ {
try_files $uri /index.php
index index.php;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/www/site$fastcgi_script_name;
include fastcgi_params;
}
}
请注意:domain.com 运行完美。
有谁能帮帮我吗?非常感谢
答案1
listen 80 default_server;
您应该在 PHP-FastCGI部分中使用server
。