Назад | Перейти на главную страницу

Настройте Nginx для приема всего домена

У меня есть сервер Ubuntu 11.10 с nginx 1.2.1 Asumme, что мой домен: domain.com Nginx служил обратным прокси: redmine.domain.com => указать на webrick redmine на порт 3000 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), да, это наша служба, которая позволяет клиентам использовать свой домен в нашем приложении Multi-Tanency.

Но проблема в том, что когда я использую 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 работает отлично.

Кто-нибудь, пожалуйста, помогите мне. большое спасибо

Вы должны использовать listen 80 default_server; в вашем PHP-FastCGI server раздел.