Я пытаюсь обслуживать статические файлы (HTML, JS и CSS) из экземпляра вычислительного движка Google под управлением Debian 8.
Я использовал git для клонирования веб-приложения в папку / var / www / prod / app
с помощью команды
sudo git clone <my repo>
. Я создал файл conf в папке с поддержкой сайтов app.conf
. Вот содержимое
server {
listen 80;
root /var/www/prod/app;
location / {
}
}
Разве этой конфигурации недостаточно, чтобы моя машина обслуживала файлы, когда я ввожу IP-адрес / путь моей машины?
Я вижу страницу добро пожаловать в nginx
, когда я набираю свой экземпляр IP-адрес в браузере. Но ни один из файлов в prod / app не обслуживается. Я получаю 404 за все пути, которые я пробую. Может ли кто-нибудь помочь мне настроить это.
Наконец-то все заработало. Я обнаружил, что мои старые заметки о SSL nginx-обратном прокси с Apache нуждаются в этой конфигурации на
# file \apps\httpd\2225\conf.d\nginx-reverse-proxy.conf
# Make sure mod_env is loaded.
# This make sure variable _SERVER[HTTPS] is set if using Nginx as reverse proxy for Apache
# This will help some application to work, since many apps using _SERVER[HTTPS] to work with SSL
# Make sure Nginx has config: proxy_set_header X-Forwarded-Proto $scheme;
SetEnvIf X-Forwarded-Proto https HTTPS=on
Так как я использую серверную часть Nginx, я получил эту конфигурацию для тестирования:
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5217-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_param HTTPS 'on'; # I tested by adding this line to check
}
И Он работает , теперь мой Moodle хорошо загружается в HTTPS Front-End (css, js, изображения и т. Д.). Теперь мне просто нужна конфигурация Nginx, аналогичная Apache SetEnvIf X-Forwarded-Proto https HTTPS = on
ИЛИ убедиться, что все мои серверные части работают по SSL каждый раз
Вам нужно добавить try_files
внутрь расположения и сделать его сервером по умолчанию:
server {
listen 80 default_server;
root /var/www/prod/app;
location / {
try_files $uri $uri/ /index.html;
}
}
Затем вам нужно перезапустить службу nginx.