Мой сайт развернут на Tomcat, который, в свою очередь, развернут на сервере Ubuntu . При разработке веб-сайта я получаю к нему доступ с использованием IP-адреса сервера, такого как xxx.xxx.xxx.xxx:8080:/yyyy. Теперь я купил доменное имя и сделал шаг, чтобы перенаправить www.mydomain.com на xxx.xxx.xxx.xxx. Когда я пытаюсь получить доступ к своему веб-сайту через www.mydomain.com, я получаю тестовую страницу Apache. Может ли кто-нибудь предоставить ссылку или объяснить оставшиеся шаги, которые мне нужно предпринять, чтобы получить доступ к моему веб-сайту?
1 ответ
Разобрался с помощью:
Почти идеальное решение для меня, но переадресацию портов пришлось делать по-другому: 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- та же машина
Итак, все пришло к этим шагам:
- Остановка сервера Apache2 на моей Ubuntu
Редактирование конфигурации хоста в файле Tomcat 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 "%r" %s %b" resolveHosts="false"/></Host>
Затем я выполнил эти команды, но последние удалили правила, которые я видел в 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
- И вот наконец я побежал:
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, когда я получаю доступ к защищенным страницам. Нужно это исправить.