Я пытаюсь настроить сервер Nginx (Centos 7) в качестве прокси-сервера переднего плана для живого сервера с Apache. (Когда он заработает, я сделаю прокси-сервер живым сервером).
У меня в основном он работает как есть, но я хочу попытаться ускорить его, заставив Nginx обслуживать статические файлы из двух локальных папок. Я создал копию папок / root и / cms (cms - это папка псевдонима на сервере Apache).
Вот мой нерабочий конфиг (для простоты без серверной секции)
location / {
proxy_pass https://www.thedomain.com:443;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location ~* .(js|css|jpg|jpeg|gif|png|svg|ico|pdf|html|htm)$ {
root /var/www/html/thedomain/www/ ;
}
location ~* /cms/.(js|css|jpg|jpeg|gif|png|svg|ico|pdf|html|htm)$ {
root /var/www/html/thedomain/cms/ ;
}
Я пробовал разные подходы к блокам локации, но ничего не работает.
location ~* .(js|css|jpg|jpeg|gif|png|svg|ico|pdf|html|htm)$ {
root /var/www/html/thedomain/www/ ;
try_files $uri @cms ;
}
location @cms {
root /var/www/html/thedomain/cms/ ;
}
Я не знаю, ясно ли это, но я хочу обслуживать js, css, jpg и т. Д. Из "/ var / www / html / thedomain / www", за исключением тех статических файлов в папке / cms /, таких как "/ cms / mysite.css ". Обслуживание статического содержимого папки CMS не так важно, поскольку пользователи в папке cms являются администраторами сайта.
На данный момент Nginx возвращает 404 для любых статических файлов, находящихся в папке / cms.
Я новичок в Nginx, поэтому приветствую любую помощь.