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

Nginx перенаправляет git.example.com на www.example.com

Как и в названии, мой веб-сайт git.mad3ngineer.net перенаправляет на www.mad3ngineer.net. Однако мой ci.mad3ngineer.net использует ту же систему, но работает нормально ...

Веб-сайт можно проверить по адресу http://git.mad3ngineer.net который вы можете видеть, перенаправляет вас на сайт по умолчанию, который в настоящее время представляет собой простой HTML-документ, созданный в vi. Однако, если вы введете http://ci.mad3ngineer.net это волшебно работает !!! И, не говоря уже о ... Если вы добавите / users / sign_in в git.mad3ngineer.net ... Примерно так: git.mad3ngineer.net/users/sign_in, он тоже волшебным образом сработает: О ... Как это может быть? Что я делаю не так? Я перезагрузил сервер, перезагрузил конфиги и не понимаю, что делаю не так.

Вот мой файл конфигурации сайта nginx:

upstream gitlab {
  server unix:/var/opt/gitlab/gitlab-rails/sockets/gitlab.socket;
}

upstream gitlabci {
  server unix:/var/opt/gitlab/gitlab-ci/sockets/gitlab.socket;
}

server{
    listen      80 default_server;
    server_name 192.168.1.10 mad3ngineer.net www.mad3ngineer.net;

    root /var/www/mad3ngineer.net;

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

    location /gitlab {
        rewrite ^/gitlab/(.*) http://git.mad3ngineer.net$1 break;
    }
    location ~ \.php$ {
                try_files $uri =404;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;

    }
}

server{
        listen 80;
        server_name ci.mad3ngineer.net;
        server_tokens off;

        root /var/opt/gitlab/git-data;
        index index.php index.html index.htm;

        client_max_body_size 20m;

        access_log /var/log/nginx/gitlab_access.log;
        error_log  /var/log/nginx/gitlab_error.log;

        location / {
                try_files $uri $uri/index.html $uri.html @gitlabci;
        }

        location @gitlabci {
                proxy_read_timeout 300;
                proxy_connect_timeout 300; # Some requests take more than 30 seconds.
                proxy_redirect     off;

                proxy_set_header   X-Forwarded-Proto $scheme;
                proxy_set_header   Host              $http_host;
                proxy_set_header   X-Real-IP         $remote_addr;
                proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
                proxy_set_header   X-Frame-Options   SAMEORIGIN;

                proxy_pass http://gitlabci;
        }
}

server{
        listen 80;
        server_name git.mad3ngineer.net gitlab.mad3ngineer.net;
        server_tokens off;

        root /var/opt/gitlab/git-data;
        index index.php index.html index.htm;

        client_max_body_size 20m;

        access_log /var/log/nginx/gitlab_access.log;
        error_log  /var/log/nginx/gitlab_error.log;

        location / {
                try_files $uri $uri/index.html $uri.html @gitlab;
        }

        location @gitlab {
                proxy_read_timeout 300;
                proxy_connect_timeout 300; # Some requests take more than 30 seconds.
                proxy_redirect     off;

                proxy_set_header   X-Forwarded-Proto $scheme;
                proxy_set_header   Host              $http_host;
                proxy_set_header   X-Real-IP         $remote_addr;
                proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
                proxy_set_header   X-Frame-Options   SAMEORIGIN;

                proxy_pass http://gitlab;
        }
}

РЕШЕНИЕ: мне пришлось изменить значение корня на / var / opt / gitlab / nginx для git.mad3ngineer.net. Спасибо за ответ!

Вам необходимо настроить "корневой" каталог обоих серверов на правильные пути.

оба корневых набора, как показано ниже:

 root /var/opt/gitlab/git-data;

ваш каталог gitlab может содержать перенаправление на основе вашего yaml-файла конфигурации производства / разработки, ищущего "gitlab_url".