Назад | Перейти на главную страницу

Можно ли просматривать мой сервер Apache (локальный хост) из дома или с удаленного компьютера, находящегося за пределами моей локальной сети?

Я занимаюсь разработкой веб-сайта, и мне нужно поделиться прогрессом с другими заинтересованными сторонами.

Можно ли просматривать мой сервер Apache (локальный хост) из дома или с удаленного компьютера, находящегося за пределами моей локальной сети?

localhost - это внутренний интерфейс, недоступный для остального мира.

У вас есть два варианта. Один из них - перенастроить ваш веб-сервер для прослушивания порта 80 вашего внешнего интерфейса. Другой вариант - перенаправить TCP-трафик с внешнего порта 80 на localhost.

Вам понадобится какое-то ограничение доступа, независимо от того, какой метод вы выберете.

Чтобы стимулировать обновление до пакетов более высокого уровня и препятствовать интенсивному использованию восходящего трафика для пакетов более низкого уровня, провайдеры обычно фильтруют наиболее распространенные порты Интернет-серверов. Итак, первое, что вам нужно сделать, это изменить порт, который прослушивает Apache. Все, что выше порта 1024, обычно является безопасной ставкой. Кроме того, вы можете связаться со своим интернет-провайдером, чтобы узнать, сколько денег они хотят разблокировать для трафика.

Listen 8080
<VirtualHost *:8080>
  # ...
</VirtualHost>

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

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

По окончании настройки кто-нибудь сможет посетить ваш веб-сайт, указав полный URL. "Http", вероятно, потребуется, чтобы браузеры не пытались использовать другие протоколы, и порт должен быть указан, даже с использованием доменного имени.

Примеры:

  • http: // <домен или IP>: <порт »/
  • http://256.256.256.256:8080/
  • http://example.com:8080/

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

Лучшим вариантом будет после вышеуказанной настройки или в случае, если у вас есть удаленный сервер, - использовать «Базовую HTTP-аутентификацию», чтобы только определенные пользователи, у которых есть логины, могли видеть вашу страницу.

# cat .htaccess # the directory which you want to protect.  
AuthType Basic
AuthName "Beta users only"
AuthUserFile /abs/path/to/passwd/file
Require valid-user 

Проверять, выписываться htpasswd команда для заполнения имен пользователей и паролей в / abs / path / to / passwd / file

Где находится эта локальная сеть, в которой находится веб-сервер? Если он находится у вас дома, вы можете настроить свой персональный маршрутизатор soho на пересылку всех запросов для входящего http (80) на определенный IP-адрес в локальной сети. Это достигается через административный веб-интерфейс маршрутизатора, в большинстве случаев доступный через IP-адрес шлюза устройства. Вам нужно убедиться, что apache настроен для прослушивания IP-адреса LAN компьютера, а не только интерфейса обратной связи:

netstat -ntlp

Будет перечислено, какие службы прослушивают IP: порт. Возможно, вам потребуется изменить директиву прослушивания apache следующим образом:

Слушай 0.0.0.0:80

И убедитесь, что iptables настроен на прием трафика, предназначенного для порта 80.

Если сервер настроен во внутренней сети, к которой у вас нет доступа или разрешения на изменение маршрутизатора ... тогда вам не следует пытаться сделать этот сервер общедоступным. Если бы вы могли заставить его работать, это, скорее всего, противоречило бы политике компании.

Кроме того, вместо того, чтобы выдавать свой домашний IP-адрес всем (так как в какой-то момент он изменится / истечет срок его действия), вы можете вместо этого выдать адрес dyndns. См. Dyndns.org

Если это не то, что вы искали, опишите подробнее в своем вопросе.