我如何去讓我的Java應用程序運行在一些插座(比如172.16.1.10:8080)的HTTP服務器,並讓這個在網絡上的其他計算機連接到域(例如http://myjavadomain.com
)它被重定向到套接字?指定域名的IP地址
回答
如果你想運行一個完全成熟的HTTP服務器,那麼你可能會想要使用一些外部庫。例如,Tomcat是用Java編寫的,但也有SUN的httpserver package。如果它只是你追求一個簡單的socket服務器,您可以使用內置類在java.net包:
ServerSocket server = new ServerSocket(8080);
while (running) {
Socket socket = server.accept();
handleConnection(socket);
}
這將監聽8080端口傳入的套接字連接,並創建一個新的Socket
每當客戶端連接。您可以與客戶端通過再溝通Socket
的InputStream
和OuputStream
,你可能會做一個單獨的線程,讓你的ServerSocket
可以繼續監聽來自其他客戶端的連接。
關於你問題的第二部分:在默認情況下,Web瀏覽器將連接到端口80,並且有幾種方法,你可以做端口轉發。連接到你的機器,例如,當
iptables -t nat -I PREROUTING --src 0/0 --dst 172.16.1.10 -p tcp --dport 80 -j REDIRECT --to-ports 8080
但最簡單的解決辦法是乾脆直接指定端口號:使用iptables一個可行的辦法是給上this website
http://myjavadomain.com:8080
這是假設您的DNS已配置,以便它已將myjavadomain.com解析爲172.16.1.10。
非常感謝,非常豐富。 –
如果您使用的是Apache Tomcat,那麼以下配置將對您有所幫助。
Fot的Apache Tomcat上,你必須做出的TOMCAT_HOME位置的配置位置的主機項。
按照下面的步驟,將有助於你
1)找到在server.xml
文件中的TOMCAT_HOME
位置server.xml
文件)作出以下主機條目
<Host name="www.xyz.com" debug="0" appBase="webapps/mynewhost" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
<Logger className="org.apache.catalina.logger.FileLogger" directory="logs" prefix="mynewhost_log." suffix=".txt" timestamp="true"/>
</Host>
In appBase property place the location of your web app
3)現在在瀏覽器中打開上面的網址。
- 1. 將IP地址重定向到域名
- 2. 使用httprequest :: setHeaders()指定域名並使用httprequest :: setUrl()指定IP地址
- 3. 域名 - 與IE的IP地址
- 4. 尋找域名的IP地址
- 5. 用ip地址代替域名的postfix
- 6. 指着一個域名到IP地址的
- 7. 可以一個域地址指向IP地址/〜用戶名不只是痛苦IP地址
- 8. C#:從域名獲取IP地址?
- 9. 從IP地址中獲取域名
- 10. 如何從IP地址獲取域名
- 11. 域名服務器IP地址
- 12. 域名及其子域名的IP地址是否相同?
- 13. 在net.DialTCP中指定本地IP地址
- 14. Nginx的重定向到的域名,而不是IP地址
- 15. 停止IP地址和子域名,只允許域名
- 16. 如何在C++中使用域名獲取域名IP地址?
- 17. 用重定向的域名取代ip地址
- 18. 從IP地址確定AWS區域?
- 19. 反向IP,找到域名上的IP地址
- 20. 使用免費的DNS服務器將子域名指向本地IP地址
- 21. VBScript:獲取指定IP地址的MAC地址(ONLY)
- 22. IP地址必須指定?在Python 2.7
- 23. 如何在curl上指定IP地址?
- 24. AWS Route 53將現有域名重定向到EC2 IP地址
- 25. Linux:將IP地址重定向到域名
- 26. 在.htaccess中將IP地址重定向到域名
- 27. 如何根據國家IP地址重定向域名
- 28. 白名單的IP地址
- 29. IP地址的別名?
- 30. Python - 驗證網址爲域名或IP地址
您正在使用哪個Web容器? –