2009年8月12日 星期三

Red5 HTTP ERROR: 404

真是活見鬼了,早上一切都還很正常,正在忙著寫實作 Red5 上的應用程序-HelloWorld 一文,怎麼晚上開機要開始上工時,我的 Red5 主機莫名其妙的出了問題:
HTTP ERROR: 404
NOT_FOUND
RequestURI=/

Powered by jetty://
天啊~這是什麼鬼?在這之前一切都很正常,Demo 都能 run ,怎麼一覺醒來,一切全變了樣?

好吧,既然發生問題,就來解決吧,我確認我在 Red5 的設定檔上沒有做任何變動,先用 putty 登入主機看看:

檢查行程,很正常,運作中,看起來是沒錯誤
# ps axw|grep java|grep red5
878 ? S 0:09 /usr/java/jdk1.6.0_14/bin/java -Djava.security.manager -Djava.security.policy=/opt/red5/dist/conf/red5.po
檢查 Red5 LISTEN 的 port
#netstat -a
tcp 0 0 *:5080 *:* LISTEN
tcp 0 0 *:1935 *:* LISTEN
這二個 port 都正常,不要再說什麼一定要在 red5.properties 裡設定 host ip 了,在今天之前,它一直是這樣子的沒有錯,而且我也嘗試去改看看,還是沒有用,問題應該不在這。

還有什麼地方有可能出錯?嗯,抽根菸想一想,從昨晚開機到後來關機前我做了些什麼?.....不就是建了一個 app 而已嘛,難道問題會是出在這?試試看先.....

還好我已用網芳連線,進到 red5 webapps 根目錄下,把早上建立的 HelloWorld_red5 剪回來存檔,試試看再用瀏覽器檢查 http://linux:5080 ,一樣不行,好,再來重新啟動 Red5 看看.....

嚇~Red5 的 Welcome 畫面又重回我眼前了:


這太神奇了,我再把剛剛剪回來的 HelloWorld_red5 貼回去,重新啟動 Red5 ,果然,馬上發生問題:


呼~找了好久,又比對其它 app 下的 web.xml、red5-web.xml 及 red5-web.properties 之後才發現,只要修改 /HelloWorld_red5/WEB-INF/web.xml (也就是我們新增的應用程式)的檔案內容即可,以下就是要修改的地方:
<context-param>
 <param-name>log4jConfigLocation</param-name>
 <param-value>/WEB-INF/log4j.properties</param-value>
</context-param>

<listener>
 <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
把以上區塊都刪除掉即可

沒有留言:

張貼留言