разместить несколько сайтов с помощью nginx

1

У меня сервер сервера Ubuntu 16.04 с установкой nginx (nginx/1.10.3)

У меня есть только одно DNS-имя energy.mysite.local которое мне нужно использовать для нескольких веб-сайтов.

У меня есть 2 каталога, в которых я разместил содержимое сайта

  1) /var/www/website/
  2) /var/www/web-site/

мои сайты-доступные и сайты с поддержкой папок 2 файла website & web-site

Содержание для website

server {

    listen 443 ssl;
    include snippets/self-signed.conf;
    include snippets/ssl-params.conf;

    location /website/ {
             alias /var/www/website/;
             gzip_static on;
             expires max;
             add_header Cache-Control public;
             autoindex off;
    }

    server_name energy.mysite.local/website;

    location / {
     try_files $uri $uri/ =404;
    }
}

Содержание для web-site

server {

    listen 443 ssl;
    include snippets/self-signed.conf;
    include snippets/ssl-params.conf;

    location /web-site/ {
             alias /var/www/web-site/;
             gzip_static on;
             expires max;
             add_header Cache-Control public;
             autoindex off;
    }

    server_name energy.mysite.local/web-site;

    location / {
     try_files $uri $uri/ =404;
    }
}

Чтобы я мог использовать ниже веб-сайт

https://energy.mysite.local/website/1.0.1/src/abc.js

https://energy.mysite.local/web-site/2.0.1/src/abc.js

В настоящее время https://energy.mysite.local/web-site/2.0.1/src/abc.js работает нормально.

Однако https://energy.mysite.local/website/1.0.1/src/abc.js дает мне 404 страницы

Любой способ сделать это?

  • 0
    Это подкаталоги одного и того же домена, и их необходимо поместить в один и тот же блок server . Значение для server_name должно включать только часть имени домена.
  • 0
    Я пробовал это, но это не работает, не могли бы вы показать, как точный код?
Теги:
nginx
nginx-location

1 ответ

1
Лучший ответ

Из вашего вопроса два местоположения, похоже, имеют один и тот же корень, и в этом случае отдельные блоки location и директива alias могут не понадобиться.

Например:

server {
    listen 443 ssl;
    server_name energy.mysite.local;

    include snippets/self-signed.conf;
    include snippets/ssl-params.conf;

    root /var/www;

    gzip_static on;
    expires max;
    add_header Cache-Control public;

    location / {
        try_files $uri $uri/ =404;
    }
}
  • 0
    Это сработало, спасибо большое @Richard Smith

Ещё вопросы

Сообщество Overcoder
Наверх
Меню