#nginx #webserver #portforwarding
Вопрос:
Я пытаюсь разместить 2 разных веб — сайта-один статический сайт, не относящийся к wordpress, и один сайт поддомена wordpress — на моем собственном сервере pi (тестовые сайты). При каждом доступе к сайту поддомена test.mysite.co.uk, вместо этого он загружает test.mysite.co.uk:4323 в нежелательный порт 4323. Основные mysite.co.uk однако сайт загружается правильно.
Первоначально я запускал эти тестовые сайты локально (на разных портах — основной сайт на порту 4321 и поддомен на 4323), пока не решил развернуть их с использованием реальных доменных имен. Однако, по — видимому, вы не можете настроить DNS так, чтобы он указывал на определенный IP-адрес и порт (предположительно, запись DNS указывает только на IP-адрес), поэтому я изменил файлы conf обоих доменов 2 для прослушивания порта 80 (поскольку, по-видимому, вы можете определить имена серверов, чтобы указать nginx, какой сайт загружать, называемый виртуальными хостами?). Обратите внимание, что у меня есть записи DNS A для mysite.co.uk и test.mysite.co.uk оба они указывают на один и тот же общедоступный IP-адрес моего маршрутизатора.
Нигде больше нет ссылки на порт 4323, поэтому я не понимаю, почему поддомен все еще настаивает на пересылке на этот порт. Я использовал режим инкогнито в chrome, поэтому проблем с кэшированием быть не должно. Мой маршрутизатор перенаправляет внешний порт 80 на внутренний порт 80, и я несколько раз перезапускал сервер nginx. Порт по умолчанию для самого моего pi больше не 80.
Вот файл /etc/nginx/доступные сайты/mysite.co.uk.conf:
server {
listen 80;
listen [::]:80;
root /var/www/mysite.co.uk;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name mysite.co.uk www.mysite.co.uk;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
}
А вот файл /etc/nginx/доступные сайты/test.mysite.co.uk.conf:
upstream wp-php-handler {
server unix:/var/run/php/php7.4-fpm.sock;
}
server {
listen 80;
server_name test.mysite.co.uk;
root /var/www/wp.mysite.co.uk;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass wp-php-handler;
}
}
Оба файла .conf также имеют символические ссылки на соответствующие папки с поддержкой сайтов.
Не уверен, что это означает что-либо, кроме загрузки local_ip:80 (или без :80, как предположительно предполагается :80) в веб-браузере, возвращает страницу по умолчанию Apache2 Ubuntu.
Согласно этому сообщению, я пытался добавить port_in_redirect off
, autoindex on
proxy_redirect http://test.mysite.co.uk:4323/ http://test.mysite.co.uk/
но безрезультатно.
У кого-нибудь есть какие-нибудь идеи о том, что я делаю не так?
Обновить:
Мне удалось создать еще один тестовый сайт, не связанный с wordpress, который точно такой же, как и первый сайт, не связанный с wordpress, но называется copy.mysite.co.uk, что, похоже, работает. Я предполагаю, что проблема с тестовым сайтом wordpress может быть связана с его конфигурацией (хотя я не вижу ничего плохого в коде, который я перечислил здесь)?
Комментарии:
1. Есть у кого-нибудь идеи? Может быть, это кэширование или что-то в этом роде? Я попытался перейти
sendfile on
наsendfile off
in nginx.conf, но ничего не вышло. Там нет папки кэша, которую нужно удалить. Я в тупике…2. У меня такое чувство, что apache борется с nginx, так как проблема возникает только с сайтами wordpress
3. Я думаю, что это может быть связано с какой-то странной проблемой перенаправления, а не с проблемой переноса, поскольку загрузка 192.168.0.15:1234/блог странно перенаправляется на 192.168.0.23:1234/блог . Я создал еще один тестовый сайт wordpress и еще один тестовый сайт, не связанный с wordpress, которые работают нормально без каких-либо проблем и успешно развертываются без проблем с перенаправлением. Эти проблемы, похоже, возникли после клонирования SD-карты моего raspberry pi (использует серверную ОС ubuntu).
4. заход в базу данных и изменение URL-адресов сайта и домашних URL-адресов в разделе wp_options очень помогает при загрузке сайта, хотя переход на подстраницы иногда загружает 192.168.0.23:1234/somepage, а иногда загружает правильный URL-адрес… Я думаю, что когда я изначально создавал сайт, pi был подключен к другой сети Wi-Fi и имел другой внутренний IP-адрес, поэтому, предположительно, изменение некоторых настроек где-то должно исправить все URL-адреса.