Настройка нескольких веб-сайтов с использованием разных портов с Ubuntu 16.04 и nginx

Я пытаюсь настроить несколько веб-сайтов с разными портами, но одним доменом. т.е. domain.com, domain.com:81, domain.com:82 Ниже приведена конфигурация my nginx,

/etc/nginx/sites-enabled/magento225

а также

upstream fastcgi_backend {
        server  unix:/run/php/php7.1-fpm.sock;
}

server {
    listen 80;
    listen [::]:80;
    server_name domain.com;
    return 301 https://$server_name$request_uri;
}


server {
    listen 81;
    listen [::]:81;
    server_name domain.com;
    return 301 https://$server_name$request_uri;
    root /var/www/html/magento226;
    location /  {
        proxy_redirect http://127.0.0.1:81/;
    }
}


server {

        listen 443 ssl;
        server_name domain.com;

        ssl on;
        ssl_certificate /etc/letsencrypt/live/wpdev1.tk/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/wpdev1.tk/privkey.pem;

        set $MAGE_ROOT /var/www/html/magento225;
        set $MAGE_MODE developer;
        include /var/www/html/magento225/nginx.conf.sample;
}

После этого nginx не удалось перезапустить. Я пытался удалить приведенный ниже кусок кода

location  {
            proxy_redirect http://127.0.0.1:81/;
        }

На этот раз nginx может быть перезапущен, но веб-сайт не работает. т.е. domain.com:81

Я включил порт (81) из экземпляра ec2, обновив правило безопасности. Любые идеи были бы хорошы. Благодарю.

Обновление 1:

upstream fastcgi_backend {
        server  unix:/run/php/php7.1-fpm.sock;
}

server {
    listen 80;
    listen [::]:80;
    server_name domain.com;
    root /var/www/html/magento225;
}


server {
    listen 81;
    listen [::]:81;
    server_name domain.com;
    root /var/www/html/magento226;
    location /  {
        proxy_pass http://127.0.0.1:81/;
    }
}

Попробовал вышеуказанную конфигурацию и не смог подключить 81 порт.

2 ответа

Похоже, что в вашем обновлении серверный блок порта 81 является прямым трафиком к себе с этим оператором proxy_pass, что послужило бы причиной для того, чтобы вообще не возвращать запрос.

Вы пытаетесь попасть в верховья реки, определенные там? Вы хотели бы изменить:

proxy_pass http://127.0.0.1:81/;

в

proxy_pass http://fastcgi_backend/;

если это так.

Добавьте порт 81 в группу безопасности EC2 для экземпляра VPS, который вы используете, после настройки блока сервера Nginx.

Другие вопросы по тегам