php 訪問超時,PHP SOAP 客戶端訪問超時

2021-10-25 21:28:27 字數 2098 閱讀 1521

今天在windows機器上做php+soap的測試。

服務端環境: windows

客戶端環境: windows

服務端和客戶端都在乙個環境(windows)上。

遇到的問題:服務端能正常的啟動,客戶端訪問服務端的時候,一直顯示超時 504錯誤。

我的開發環境是nginx+php,準備作乙個soap的實驗,soapclient和soapserver都是在我的開發機上,用soapclient訪問soapserver的時候,總是返回504錯誤,相同的**放到apache+php_module的環境下沒有問題。nginx的錯誤日誌顯示,client和server的錯誤都是fastcgi超時,我一度懷疑是soapserver的問題,soapserver超時不響應,導致了soapclient的超時。但是我用cli模式執行client,server能正常返回,說明不是soapserver的問題。用nginx下的client訪問apache上的server,正常用apache下的client訪問nginx上的server,正常我恍然大悟,是不是程序數的問題,先懷疑nginx,後懷疑php-cgi,一查資料,如果用php-cgi -b9000直接器fastcgi的話,同時只能處理乙個請求,soapclient和soapserver需要兩個程序,soapclient把程序掛 起等soap server返回,但是soapserver等待soapclient釋放phpcgi的程序,所以一直都是返回504了。

趕緊打個fpm的補丁,困惑n天的問題解決了。

網上有篇這樣的解決辦法不過看不明白啊,也不知道好不好用

來自:好,看完後,我的情況的和描述的一樣,那就照著這個思路去做吧,相信我,是成功的。

首先: 給php開啟多個程序,因為預設的是乙個程序,windows環境需要類似fpm這樣的php程序管理,在網上找了個xxfpm,附件裡面有

配置:啟動fastcgi 一般的配置d:/php55n/php-cgi.exe -b 127.0.0.1:9000 -c d:/php55n/php.ini

xxfpm d:/php55n/php-cgi.exe -n 2 -p 9000

xxfpm d:/php55n/php-cgi.exe -n 2 -p 9001

上面是三個開啟php程序的命令啊。

其次:配置nginx#服務端配置

server {

listen 80;

server_name server.com;

index index.html index.htm index.php;

root d:/php_workplace/php_soap;

location / {

try_files $uri $uri/ /index.php;

location ~*\.php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_split_path_info ^(.+\.php)(.*)$;

include fastcgi_params;

fastcgi_param script_filename $document_root$fastcgi_script_name;

#客戶端配置

server {

listen 81;

server_name client.com;

index index.html index.htm index.php;

root d:/php_workplace/php_soap;

location / {

try_files $uri $uri/ /index.php;

location ~*\.php$ {

fastcgi_pass 127.0.0.1:9001;

fastcgi_index index.php;

fastcgi_split_path_info ^(.+\.php)(.*)$;

include fastcgi_params;

fastcgi_param script_filename $document_root$fastcgi_script_name;

最後:開始測試

返回:哈哈,能能訪問啦

附件裡面有測試**哦。

php 訪問超時,php請求介面超時如何解決

http訪問 一般我們訪問http方式很多,主要是 curl,socket,file get contents 等方法。如果碰到對方伺服器一直沒有響應的時候,我們就悲劇了,很容易把整個伺服器搞死,所以在訪問http的時候也需要考慮超時的問題。curl 訪問http curl 是我們常用的一種比較靠譜...

原創 PHP訪問MySQL查詢超時處理

分類 linux freebsd server mysql phpquery 擴充套件資料庫 優化php連線mysql主要是使用mysql提供的 libmysqlclient 的客戶端庫,同時也延伸出來 mysql 和 mysqli 兩套php的擴充套件,相對來說 mysqli 比 mysql 更好...

php int 設定超時,php如何設定超時時間

php設定超時的解決方法 1 初始設定指令碼執行時間 開啟php.ini檔案,找到 max execution time 30 修改為 max execution time 600 如果你沒有伺服器修改許可權,可通過內建php指令碼的方法設定超時時間,在需要首席執行官時間操作的php檔案中新增以下 ...