Доступ к простым подкаталогам приложения node.js с помощью nginx

220
Olivier Krull

У меня есть сервер Ubuntu с установленным nginx и запускаю простое приложение node.js на порту 3000.

Мне удалось настроить nginx для обслуживания приложения в /.

Моя структура выглядит так:

mainFolder app.js etc... ------------->folder1 index.html ----------->folder2 index.html 

Теперь при доступе к IP- index.htmlадресам моих серверов в браузере я получаю из folder1: это правильно.

Но когда я пытаюсь получить доступ, myIp/folder2/index.html я получаю: 404 Not Found

Конфигурация Nginx:

server { listen 80 default_server; listen [::]:80 default_server ipv6only=on;  location / { proxy_pass http://localhost:3000; # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ =404; # Uncomment to enable naxsi on this location # include /etc/nginx/naxsi.rules auth_basic "Restricted"; auth_basic_user_file /etc/nginx/.htpasswd; } 

Может кто-нибудь объяснить, что я делаю не так здесь, пожалуйста?

Помощь будет принята с благодарностью.

0

1 ответ на вопрос

0
Nathan.Eilisha Shiraini

Я понимаю, что из предоставленного вами дерева файлов folder2оно находится в folder1. Это означает, что для доступа folder2/index.htmlполный URL-адрес, который вы должны использовать, - это 127.0.0.1/folder1/folder2/index.htmlзамена IP- адреса тем, что является вашим IP-адресом или именем домена.

Если вы хотите получить к нему доступ, 127.0.0.1/folder2/index.htmlвам нужно поместить folder2в ту же папку, что и folder1.

Твой ответ, но мне только удалось заставить его работать. Я только что прокомментировал: try_files $ uri $ uri / = 404; Olivier Krull 7 лет назад 0

Похожие вопросы