
Я пытаюсь использовать Nginx как обратный прокси с Apache для кэширования статических файлов и т. д. У меня возникла проблема с новой установкой: он не передает URI в Apache. По сути, у меня есть форум vBulletin, и я использую vBSEO как SEO-прокси. Проблема в том, что он генерирует 404 для каждого URL, за исключением файлов, которые уже существуют.
решение1
Не могли бы вы предоставить нам соответствующую часть вашей конфигурации nginx? В настоящее время мы не можем предположить, в чем проблема (хотя можно: используется 'localhost', которого нет в файле hosts, поэтому не разрешается в 127.0.0.1, неправильный номер порта для apache, вы забыли добавить заголовок хоста и т. д.). Обычно это выглядит примерно так:
server {
listen 80;
server_name www.example.com;
# normally some checking here for static content which exists as file
# like images, js, etc, with a 'break', with at the end:
location / {
proxy_pass http://127.0.0.1:<portnumber apache is on>/;
proxy_redirect off;
proxy_set_header Host $host;
}
}
решение2
Ну, я проследил это до плагина SEO friendly (vBSEO). Он создавал ссылки с расширением .html, и, похоже, nginx установил его для кэширования. Поскольку эти ссылки физически не существовали, он создавал 404.