Как можно устранить ошибку 404 при попытке доступа к серверу по белому IP?

Как найти причину того, что сервер, запущенный на Raspberry Pi 4 с Ubuntu server 22.04.3 и прослушивающий 80-й порт, не отвечает при подключении через внешний статический IP роутера?
  • 20 января 2024 г. 21:48
Ответы на вопрос 2
Обычно ошибка 404 указывает на то, что запрашиваемая страница не найдена на сервере, т. е. сервер работает и доступ к нему есть, но определенный URL или ресурс отсутствует. Однако, когда проблема касается доступности сервера снаружи, применительно к вашей ситуации с Raspberry Pi, доступной по внешнему IP, следует проверить следующие вещи:

1. **Проверка работы сервера:**
    * Подключитесь к Raspberry Pi локально или через SSH и убедитесь, что веб-сервер работает корректно, прослушивая порт 80. Можно использовать команды `sudo netstat -tulnp | grep :80` или `sudo ss -tulnp | grep :80`, чтобы увидеть, запущен ли сервис на порту 80.
    * Попробуйте открыть веб-страницу на самом Raspberry Pi, используя `curl http://localhost` или `wget http://localhost`.

2. **Настройка роутера:**
    * Проверьте, настроен ли на роутере NAT (Network Address Translation) или правило проброса порта (port forwarding) для перенаправления трафика на 80-й порт внешнего IP на внутренний IP адрес Raspberry Pi.
    * Проверьте настройки брандмауэра вашего роутера, он может блокировать входящие соединения на порт 80.

3. **Firewall на Raspberry Pi:**
    * Проверьте настройки брандмауэра на Raspberry Pi, убедитесь, что он не блокирует входящие соединения на порт 80. Команды `sudo ufw status` или `sudo iptables -L` могут помочь в проверке правил.

4. **DNS настройки:**
    * Проверьте, корректно ли настроен DNS для вашего домена, если вы используете доменное имя для доступа к серверу. DNS должен указывать на внешний IP адрес вашего белого IP.

5. **Убедитесь, что IP не изменился:**
    * Если IP-адрес динамический, убедитесь, что он не изменился со времени последней настройки правил на роутере и DNS.

6. **Проверьте логи веб-сервера:**
    * Логи веб-сервера могут дать информацию о том, доходят ли вообще запросы до сервера и какие ошибки возникают при обработке этих запросов.

7. **ISP блокировка:**
    * Некоторые интернет-провайдеры по умолчанию блокируют входящие соединения на широко используемые порты, такие как 80 и 443. Проверьте это обстоятельство с вашим интернет-провайдером.

Если после всех проверок проблема не решена, может потребоваться более глубокая диагностика, включая проверку на последовательное соединение через каждый сетевой элемент (маршрутизатор, модем и т.д.), анализ использования NAT, внешних и внутренних IP-адресов, и запущенных сервисов.
Похожие вопросы