Я пытаюсь настроить Nginx для использования домена, такого как прокси-сервер, на страницы github, а также для целевой страницы в корневом домене.
С этой конфигурацией прокси для githubpages работает нормально, но если я проверю example.com, он также перейдет на страницы github.
Моя конфигурация такова:
server {
listen 80 ;
index index.html index.htm;
server_name example.com www.example.com ;
location = / {
index index.html;
root /home/landing/public_html ;
}
location / { #this work fine
proxy_set_header Host enlaorbita.github.io;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://user.github.io/;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Для этого нужно:
example.com или www.example.com -> перейти на мой лендинг (не работает)
example.com/repo/ -> перейдите на user.github.io/repo. Да, это работает
Спасибо
В index
директива вызывает внутреннее перенаправление к /index.html
, так что он соответствует вашему location /
блок.
Вам понадобится отдельный блок местоположения для обработки /index.html
и убедитесь, что он не соответствует location /
блок. Если у вас есть другие статические ресурсы, такие как изображения или CSS, используемые в index.html
, вам также понадобится блок местоположения для их обработки. Пример:
server {
listen 80;
server_name example.com www.example.com;
root /home/landing/public_html;
location = / {
index index.html;
}
location /index.html {
# Empty block -- root is set above
}
location /static {
# Also an empty block
# Put your static files in /home/landing/public_html/static, and access
# them at example.com/static/filename
}
location / {
proxy_set_header Host user.github.io;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://user.github.io/;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}