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

393
user775659

Мой сайт развернут на Tomcat, который, в свою очередь, развернут на сервере Ubuntu . При разработке сайта я получаю к нему доступ с использованием IP-адреса сервера, например, xxx.xxx.xxx.xxx:8080:/yyyy. Теперь я купил доменное имя и сделал шаг, чтобы перенаправить www.mydomain.com на xxx.xxx.xxx.xxx. Когда я пытаюсь получить доступ к своему веб-сайту через www.mydomain.com, я получаю тестовую страницу Apache. Может ли кто-нибудь предоставить ссылку или объяснить оставшиеся шаги, которые мне нужно предпринять, чтобы получить доступ к моему веб-сайту?

0
Измените «8080» на «80» - - https://stackoverflow.com/q/18415578/3395469 Anaksunaman 6 лет назад 0
Используете ли вы порт 80 (или по умолчанию) при использовании www.mydomain.com? Правильно ли развернуто ваше приложение на сервере Apache? xenoid 6 лет назад 0

1 ответ на вопрос

0
user435421

Разобрался с помощью:

Почти идеальное решение для меня, но переадресацию портов пришлось делать по-другому: https://www.digitalocean.com/community/questions/how-to-access-a-java-web-application-by-a-domain-name- используя-8-кот

О переадресации портов: https://www.systutorials.com/816/port-forwarding-using-iptables/

С помощью этой статьи и поста Роберта Гоули я понял, что портовые команды «переадресации» мне действительно нужны: https://askubuntu.com/questions/104824/port-forward-to-a-port-on-the- та же машина

Итак, все пришло к этим шагам:

  1. Остановка сервера Apache2 на моей Ubuntu
  2. Редактирование конфигурации хоста в Tomcat's server.xml чтобы он выглядел следующим образом:

     <Host name="mydomain.com" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Alias>www.mydomain.com</Alias> <Context path="" docBase="mydomain_appname" debug="0" privileged="true" /> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" resolveHosts="false"/></Host> 
  3. Затем я выполнил эти команды, но последние удалили правила, которые я видел в iptables (не знаю, какое влияние оказали правила 1 и 3):

iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j DNAT - до XXXXX: 8080

iptables -A FORWARD -p tcp -d XXXXX --dport 8080 -j ПРИНЯТЬ

iptables -t nat -A POSTROUTING -j MASQUERADE

  1. И вот наконец я побежал:

sudo iptables -t nat -I ПРЕДУПРЕЖДЕНИЕ -p tcp --dport 80-j НАПРАВЛЕНО --to-ports 8080

sudo iptables -t nat -I ВЫХОД -p tcp -o lo --dport 80-j НАПРАВЛЕНО --to-ports 8080

В итоге: теперь я могу получить доступ к своему веб-сайту с www.mydomain.com, как и любой другой веб-сайт. Порт 8443 остается в URL, когда я получаю доступ к защищенным страницам. Нужно это исправить.

Похожие вопросы