2016-04-07 51 views
0

我目前正在爲我的研究所開發GWT應用程序(源代碼:https://github.com/eufarn7sp/asmm-eufar-java)。爲了測試目的,我在自己的服務器上安裝了Tomcat 8(業餘的東西,已經安裝了apache php服務器來爲我和我的朋友提供一個php論壇,沒有什麼關鍵的),並在其上部署了我的應用程序。它是可用以下此鏈接:http://176.31.165.18:8080/asmm-eufar/一旦設置了反向代理,就無法用GWT更改窗口標題

因爲我想刪除URL(反向代理)中的IP地址和端口號,我啓動mod_proxy爲apache,遵循教程。這裏是鏈接:http://www.orion-universe.eu/asmm-eufar/。 99%的應用程序是可以正常工作的。但似乎我的應用程序無法修改瀏覽器選項卡中的標題。它應該顯示「ASMM Creator」並在用戶修改表單後更新。我用通常的命令來設置窗口標題:

Window.setTitle("blablabla"); 

由於我沒有在服務器管理方面的專家,我看不到我在做什麼錯在這裏。這裏是我在apache的conf文件中使用的代碼:

<VirtualHost *:80> 

    ServerName orion-universe.eu 

    ProxyRequests On 
    ProxyPass /asmm-eufar http://localhost:8080/asmm-eufar 
    ProxyPassReverse /asmm-eufar http://localhost:8080/asmm-eufar 

    <Location "/asmm-eufar"> 
    Order allow,deny 
    Allow from all 
    </Location> 

</VirtualHost> 

回答

0

服務器不控制如何設置或更改標題。

相反,比你的代理其他事情正在發生 - 你orion-universe.eu服務器實際上並沒有進行代理呼叫,而是顯示一個HTML網頁,其中只有一個 ...,然後在原來的頁面指向:

<?xml version="1.0" encoding="utf-8"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html> 
    <head> 
    <title>www.orion-universe.eu</title> 
    </head> 
    <frameset> 
    <frame src="http://176.31.165.18/asmm-eufar/" name="redir"> 
    <noframes> 
     <p>Original location: 
     <a href="http://176.31.165.18/asmm-eufar/">http://176.31.165.18/asmm-eufar/</a> 
     </p> 
    </noframes> 
    </frameset> 
</html> 

這然後加載http://176.31.165.18/asmm-eufar/在一個框架,因此它無法控制網頁的標題(這就是爲什麼同時裝入http://176.31.165.18/asmm-eufar/http://www.orion-universe.eu/asmm-eufar/有不同的初始標題太)。

您的代理通看起來正確的,但別的東西是導致此 - 找出與IFRAME是HTML文件,看看有什麼可能會導致你的服務器來服務它來代替。


在重讀的ProxyPass,有一件事我跳了出來:要重定向到本地主機:8080,但你的心不是服務器運行有:難道你的意思是對於

ProxyPass /asmm-eufar http://localhost:8080/asmm-eufar 

說些類似

ProxyPass /asmm-eufar http://176.31.165.18:8080/asmm-eufar 

第二行相同。這似乎假設你有兩臺不同的服務器,一臺是另一臺服務器的代理,但仍未明確爲什麼顯示iframe,除非localhost:8080正在提供服務?

+0

你是對的,使用IP地址給我所等待的:標題標題正在工作,因爲它應該。從我的角度來看,我也有一種網頁嵌入在另一個網頁的感覺。我在這裏缺乏知識當然是錯誤的。我如何設置Apache服務器需要審查。我將取消我的修改並嘗試在嘗試修復它之前瞭解其所有後果。感謝您的幫助! – Buffort

+0

iframe是什麼阻止標題改變 - 它不是代理,並會導致問題,如標題問題。這就是我可以從事物的GWT方說,你需要修復的反向代理,並刪除了iframe,可能通過更新您的問題_just_有關代理的詳細信息,並等待更多的幫助。我會添加一個我發現看起來不對的東西,但那只是我所能做的,我不太瞭解apache。 –

+0

我修改了ProxyPass參數以用IP地址替換localhost。結果是一樣的。由於Tomcat和Apache在同一臺服務器上,我通過本地主機就足夠了。現在,我會做一些測試,並試圖找到的信息,因爲它似乎我的conf文件是不是完全正確的(「將ProxyRequests在」不應該根據Apache文檔這裏使用) – Buffort

0

嘗試使用Document.get().setTitle(title);我假設你指的是文檔窗口。

+0

感謝您的幫助!一旦我明白我爲什麼在網頁上有一個框架,我會嘗試這個。 – Buffort