2010-07-28 65 views
1

我在weblogic 9.2中有兩個節點(172.20.1.68:7101,172.20.1.23:7102),1個管理服務器(172.20.1.23:7001)和1個平衡器(apache代理插件)172.20.1.49:7103。weblogic 9.2使用代理插件進行負載平衡和集羣問題

我在平衡器的access.log中看到的是,每個請求都標記爲404未找到。但在節點的日誌中,我可以看到與代碼200標記爲GET的非常相同的請求。

問題是我的應用程序無法正常工作。

任何想法,將不勝感激。

非常感謝!

編輯:

這是我的相關的httpd.conf,我沒有一節,而不是我 有這樣的:

<VirtualHost *:80> 
     ServerName fake.server.name 
     DocumentRoot "/usr/local/apache_ssl/htdocs" 
     <Location /myApp/> 
      SetHandler weblogic-handler 
      WebLogicCluster 172.20.1.23:7102,172.20.1.68:7101 
      Debug All 
      DebugConfigInfo ALL 
      WLLogFile logs/p.log 
       KeepAliveEnabled ON 
      KeepAliveSecs 15 
     </Location> 

     <Location /psoc-app> 
      SetHandler weblogic-handler 
      WebLogicCluster 172.20.1.23:7102,172.20.1.68:7101 
       KeepAliveEnabled ON 
      KeepAliveSecs 15 
     </Location> 

    WLLogFile logs/p.log 
    ErrorLog logs/_log_error 
    CustomLog logs/_log common 
</VirtualHost> 

/tmp/wlproxy.log要求:

================New Request: [GET /myApp/path HTTP/1.1] ================= 
Thu Jul 29 14:30:00 2010 <1382912804066002> INFO: SSL is not configured 
Thu Jul 29 14:30:00 2010 <1382912804066002> Using Uri /myApp/path 
Thu Jul 29 14:30:00 2010 <1382912804066002> After trimming path: '/myApp/path' 
Thu Jul 29 14:30:00 2010 <1382912804066002> The final request string is '/myApp/path' 
Thu Jul 29 14:30:00 2010 <1382912804066002> SEARCHING  id=[172.20.1.23:7102,172.20.1.68:7101] from current ID=[172.20.1.23:7102,172.20.1.68:7101] 
Thu Jul 29 14:30:00 2010 <1382912804066002> The two ids matched 
Thu Jul 29 14:30:00 2010 <1382912804066002> @@@FOUND...id=[172.20.1.23:7102,172.20.1.68:7101], server_name=[172.20.1.49], server_port=[80] 
Thu Jul 29 14:30:00 2010 <1382912804066002> attempt #0 out of a max of 5 
Thu Jul 29 14:30:00 2010 <1382912804066002> Trying a pooled connection for '172.20.1.68/7101/7106' 
Thu Jul 29 14:30:00 2010 <1382912804066002> getPooledConn: No more connections in the pool for Host[172.20.1.68] Port[7101] SecurePort[7106] 
Thu Jul 29 14:30:00 2010 <1382912804066002> general list: trying connect to '172.20.1.68'/7101/7106 at line 2619 for '/myApp/path' 
Thu Jul 29 14:30:00 2010 <1382912804066002> INFO: New NON-SSL URL 
Thu Jul 29 14:30:00 2010 <1382912804066002> Connect returns -1, and error no set to 115, msg 'Operation now in progress' 
Thu Jul 29 14:30:00 2010 <1382912804066002> EINPROGRESS in connect() - selecting 
Thu Jul 29 14:30:00 2010 <1382912804066002> Local Port of the socket is 38958 
Thu Jul 29 14:30:00 2010 <1382912804066002> Remote Host 172.20.1.68 Remote Port 7101 
Thu Jul 29 14:30:00 2010 <1382912804066002> general list: created a new connection to '172.20.1.68'/7101 for '/myApp/path', Local port:38958 
Thu Jul 29 14:30:00 2010 <1382912804066002> URL::parseHeaders: CompleteStatusLine set to [HTTP/1.1 404 Not Found] 
Thu Jul 29 14:30:00 2010 <1382912804066002> URL::parseHeaders: StatusLine set to [404 Not Found] 
Thu Jul 29 14:30:00 2010 <1382912804066002> parsed all headers OK 
Thu Jul 29 14:30:00 2010 <1382912804066002> sendResponse() : r->status = '404' 
Thu Jul 29 14:30:00 2010 <1382912804066002> canRecycle: conn=1 status=404 isKA=0 clen=1214 isCTE=0 
Thu Jul 29 14:30:00 2010 <1382912804066002> closeConn: URL.canRecycle() returns false, deleting URL '172.20.1.68/7101' 
Thu Jul 29 14:30:00 2010 <1382912804066002> request [/myApp/path] processed sucessfully.................. 

對不起,我只是不能讓格式化程序工作

+0

您是否使用帶有代理插件的Web服務器(Apache)?羣集節點訪問日誌(200)是否顯示始發請求IP地址始終爲* 172.20.1.23 *即平衡器服務器的日期?這是爲了證明所有的請求是否都正確地從插件轉向節點? – JoseK 2010-07-29 06:09:32

+0

是的,我正在使用Apache以及代理插件。在羣集節點訪問日誌中,我看到傳入的連接來自apache平衡器。在節點日誌中,它說:「GET/myApp/path HTTP/1.1」200 0 而在Apache訪問日誌中,我看到:「GET/myApp/path HTTP/1.1」404 1214 感謝您的迴應! – ssedano 2010-07-29 12:37:42

+0

你可以發佈* * – JoseK 2010-07-29 13:44:08

回答

2

從comme目前爲止有3件事要注意和嘗試:

A)在Apache conf中它指向/tmp/wlproxy.log?這個問題是否我們正在查看正確的conf文件 - 或者是否有另一個Apache運行的實例?

運行此命令(如果在UNIX上)來識別主人的PID寫入日誌

/usr/sbin/fuser /tmp/wlproxy.log 

這將返回一個Apache進程的PID - 是Apache的,你正在運行?

你也可以嘗試運行fuser與你的Apache關閉,看看它是否仍然顯示擁有該文件的PID?

B)的插件調試日誌顯示apache的請求轉到第二個服務器集羣中,並得到了404

Thu Jul 29 14:30:00 2010 <1382912804066002> general list: created a new connection to '172.20.1.68'/7101 for '/myApp/path', Local port:38958 
Thu Jul 29 14:30:00 2010 <1382912804066002> URL::parseHeaders: CompleteStatusLine set to [HTTP/1.1 404 Not Found] 
Thu Jul 29 14:30:00 2010 <1382912804066002> URL::parseHeaders: StatusLine set to [404 Not Found] 

絕對是部署的應用程序,並可以用172.20.1.68:7101/myApp/path也?

C)當您對conf中顯示的/psoc-app提出請求時會發生什麼?

+0

謝謝你的時間。文件/tmp/wlproxy.log是默認的日誌文件。我解決了這個問題,問題是,在weblogic中,應用程序在部署時出錯(位於多節點集羣上)。 再次感謝您的回覆和時間! – ssedano 2010-08-03 10:21:50

+0

@Udo:很高興幫助 – JoseK 2010-08-03 12:56:57