所以基本上我已經做了一個webapp與以下網址www.foo.com/foo
(當本地部署,我的應用程序有以下網址localhost:8080/foo/
)。不過,我想用www.foo.com
代替。我怎麼能這樣做呢?謝謝!我有一個apache2 web服務器和tomcat 7.初學者春天:如何處理網址
回答
這與Spring,Apache或Tomcat無關。這完全是關於name resolution,它是由操作系統中較低級別的東西完成的。您可以強制www.foo.com通過修改本地主機線,以解決在本地計算機中的hosts文件,所以它看起來是這樣的:
127.0.0.1 localhost www.foo.com
在Linux上,這是在/etc/hosts
。在Windows上,你會發現它在C:\Windows\System32\drivers\etc\hosts
(感謝@JBNizet提供這個)。請注意,如果您這樣做,您將無法再訪問www.foo.com,因爲它始終會解析到您的本地計算機。
如果您嘗試這樣做是因爲您的應用在內部引用了「www.foo.com」,並且需要正確解析才能正常工作,那麼您試圖以錯誤的方式解決該問題。您應該將這些值拉到某種外部配置中,以便可以根據應用程序運行的環境進行適當設置。
更新:如果這只是部署到tomcat的根目錄下,一個已經回答了好幾次,就像Tomcat 6: How to change the ROOT application。
謝謝瑞安。我猜想我試圖做的是部署我的應用程序,但我想使用www.foo.com訪問它。現在,我必須使用www.foo.com/myapp來訪問它。 ive看了一下mod_proxy,並且工作正常,但是當我的應用程序重定向到配置文件頁面時,它會再次將foo附加到url。例如www.foo.com/foo/profile,而不是www.foo.com/profile – OckhamsRazor
已更新。那是你在找什麼? –
謝謝。是的,就是這樣。 – OckhamsRazor
ProxyPass /http://www.abc.com:8080/myApp/
ProxyPassReverse/http://www.abc.com:8080/myApp/
或用
<VirtualHost X.X.X.X:80>
ServerName tomcatpage.yourdomain.com
ServerAlias tomcatpage.yourdomain.com
Redirect permanent/http://tomcatpage.yourdomain.com:8080/
</VirtualHost>
瞭解更多關於mod_proxy。
我其實已經試過了。但是,如果我登錄到我的webapp,它會轉到http://www.abc.com:8080/myApp/profile,而不是http://www.abc.com:8080/profile。 – OckhamsRazor
我編輯了我的答案。後者不是一種選擇嗎? – asgoth
- 1. 初學者:網址
- 2. 春天處理器腐敗網址
- 3. Spring MVC的3網址初學者
- 4. 對初學者的網址重寫
- 5. 處理類給NullPointException(初學者)
- 6. 文件在Python處理初學者
- 7. 處理遊戲杆初學者
- 8. Java:初學者異常處理問題
- 9. C異常處理初學者#
- 10. 春天遠程處理和寧靜的網址
- 11. 網址在春天更改
- 12. 如何處理在春天的ProviderManager
- 13. 春天 - 如何處理異常
- 14. 春與Hibernate錯誤 - 初學者級別
- 15. 如何處理SQL初學者的多個查詢表?
- 16. Linux初學者,何處放置boost庫?
- 17. 初學者 - Springboot天氣計劃
- 18. 調試天青錯誤:初學者
- 19. 春天AOP異常處理
- 20. 異常處理在春天
- 21. WCF - 初學者問題地址(ABC)
- 22. 閃光AS3物理學春天問題
- 23. Haskell初學者
- 24. 初學者
- 25. MonoDroid - 初學者
- 26. PROLOG初學者
- 27. 初學者
- 28. CakePHP初學者
- 29. 初學者JavaScript
- 30. Prolog初學者
爲什麼?如果您將www.foo.com分配給本地主機,您將無法再訪問真正的www.foo.com。如果你的應用代碼依賴於這個URL,那麼你做錯了什麼。 –