nginx custom root для определенных адресов - PullRequest
0 голосов
/ 16 января 2020

Я установил nginx для моего VPN. И я очень новичок в этом, так что это может быть глупой ошибкой, но я не смог понять нашу или гуглить это.

То, что я пытаюсь сделать и продолжаю терпеть неудачу, это установить root папка для определенных адресов. Например: mydomain.com/websiteone/ будет иметь папку root в / var / www/websiteone/public/ и mydomain.com/websitetwo/ в / var / www/websitetwo/public/

Я использую Laravel, поэтому я нужно сделать это.

Вот конфинг и то, что я пытался в разных вариациях.

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www;

    index index.html index.php index.htm;

    location /websiteone/ {
        root /var/www/websiteone/public/;
        try_files $uri $uri/ 404;
    }

    location /websitetwo/ {
        root /var/www/websitetwo/public/;
        try_files $uri $uri/ 404;
    }
}


1 Ответ

1 голос
/ 17 января 2020

Нет необходимости в alias или чем-либо необычном , если URL-путь каталога совпадает с фактическими именами каталогов двух ваших Laravel экземпляров (см. Ниже).

Кроме того, Laravel имеет типичный шаблон URL-адреса "front controller", что означает, что URL-адреса, которые не существуют, должны быть загружены через его index.php. Итак:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www;

    index index.html index.php index.htm;

    location /websiteone/ {
        root /var/www/websiteone/;
        try_files /public$uri /public$uri/ /public/index.php$is_args$args;
    }

    location /websitetwo/ {
        root /var/www/websitetwo/;
        try_files /public$uri /public$uri/ /public/index.php$is_args$args;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...