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

Nginx обслуживает 2 блога-призрака в node.js

Я пытаюсь настроить экземпляр Amazon EC2 под управлением Amazon linux с nginx для обслуживания двух разных блогов-призраков в node.js.

Насколько я понимаю, веб-трафик попадает на общедоступный IP-адрес экземпляра ec2, nginx прослушивает порт 80 и файлы конфигурации для обратного прокси-сервера nginx для каждого домена к портам, которые прослушивает файл index.js для каждого блога.

Я использую forever для запуска двух файлов index.js в производственной среде, но когда я запускаю оба, оба домена (domain1.com и domain2.com) показывают одно и то же содержимое. Похоже, запуск второго index.js перезаписывает / перенаправляет трафик на единственный призрачный блог.

Возможно, некоторые из конфигов могут помочь:

Домашняя папка

ls ~
domain2.com  node  domain1.com

Config.js для domain1.com

cat ~/domain1.com/config.js
 production: {
        url: 'http://www.domain1.com/',
        mail: {},
        database: {
            client: 'sqlite3',
            connection: {
                filename: path.join(__dirname, '/content/data/ghost.db')
            },
            debug: false
        },

        server: {
            host: '127.0.0.1',
            port: '2368'
        }
    },

Config.js для domain2.com

cat ~/domain2.com/config.js
 production: {
        url: 'http://domain2.com/',
        mail: {},
        database: {
            client: 'sqlite3',
            connection: {
                filename: path.join(__dirname, '/content/data/ghost.db')
            },
            debug: false
        },

        server: {
            host: '127.0.0.1',
            port: '2369'
        }
    }

Основной конфиг nginx

cat /etc/nginx/nginx.conf
server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  domain1.com *.domain1.com;
        root         /var/www/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   Host      $http_host;
            proxy_pass http://127.0.0.1:2368;
        }

папка nginx conf.d

ls /etc/nginx/conf.d/
domain2.com.conf  virtual.conf

конфигурация nginx domain2.com

cat /etc/nginx/conf.d/domain2.com.conf
server {
        listen       80;
        listen       [::]:80;
        server_name  domain2.com *.domain2.com;
        root         /var/www/html;

        location / {
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   Host      $http_host;
            proxy_pass http://127.0.0.1:2369;
        }
}

Как я начинаю вести блоги о призраках

cd ~/domain2.com/
NODE_ENV=production forever start index.js

cd ~/domain1.com/
NODE_ENV=production forever start index.js

Извините за очень длинный первый пост. Заранее благодарю за помощь.