2011-04-11 99 views
0

我的PHP服務器出現了一些問題。運行時的大部分功能都會產生相同的錯誤。PHP服務器問題

Warning: fopen(http://www.ietf.org/rfc/rfc2475.txt) [function.fopen]: failed to open stream: 
A connection attempt failed because the connected party did not properly respond after a 
period of time, or established connection failed because connected host has failed to respond. D:\inetpub\vhosts\coolfbapps.in\httpdocs\test\merger2.php on line 3 

Fatal error: Maximum execution time of 30 seconds exceeded in D:\inetpub\vhosts\coolfbapps.in\httpdocs\test\merger2.php on line 3 

同樣的錯誤是當我使用imagecreate功能,get_image功能。

我跟服務提供商交談過,但他們說我應該告訴他們這個錯誤的原因,以便他們糾正錯誤。請確定是否有人能夠確定應該對服務器進行哪些更改以消除這些錯誤。

代碼中使用

$ch = curl_init("http://www.gravatar.com/avatar/95111e2f99bb4b277764c76ad9ad3569?s=32&d=identicon&r=PG"); 
$fp = fopen("http://www.ietf.org/rfc/rfc2475.txt", "r"); 

curl_setopt($ch, CURLOPT_FILE, $fp); 
curl_setopt($ch, CURLOPT_HEADER, 0); 

curl_exec($ch); 
curl_close($ch); 
fclose($fp); 
+0

你需要看一下''in - '區域。在這裏發佈代碼 – JohnP 2011-04-11 07:09:10

回答

1

對不起,這一點,但我無法尚未就此發表評論。您需要發佈導致這些錯誤的代碼。您是否明確要求該網址?

要調試這一點,你應該登錄到服務器,並嘗試請求文件,看看是否你實際上能夠對端口80的出站連接爲此在Linux服務器上只運行

wget http://www.ietf.org/rfc/rfc2475.txt 

..看看它是否失敗。如果確實如此,您需要與您的託管服務提供商/ ISP進行溝通。

如果您沒有訪問,你可以簡單地嘗試(在PHP)服務器:

<?php 
file_get_contents('http://www.google.com/'); // Google so that it's not the same URL 
?> 

如果有錯誤,與上面相同。

+0

我已經試過了。 file_get_contents給出相同的錯誤。請參閱我剛更新的代碼 – Anurag 2011-04-11 07:23:10

+0

如果這不起作用(即使使用Google?),那肯定是託管問題。 – 2011-04-11 07:31:54

+0

是給與谷歌同樣的錯誤。現在我應該告訴服務提供商?他們告訴我要告訴問題出在哪裏。我已經告訴他們這些功能不起作用。 – Anurag 2011-04-11 07:39:06

0

第一個錯誤(fopen()之一)是由於您嘗試從中加載數據的服務器的響應超時引起的。即服務器響應時間太長,所以連接超時。

第二個錯誤是腳本運行時間過長。 PHP有一個名爲max_execution_time的設置,這樣腳本就不會吃掉服務器上的所有資源。您的服務器有一個允許執行30秒的設置,或者有一個致命錯誤死亡()。

0

似乎你的服務器無法連接到這些網站。也許你的服務器不允許啓動傳出連接或以某種方式阻止傳出的HTTP流量?

我敢打賭,這不是一個PHP問題,而是與您的服務器連接有關。如果您有SSH訪問權限,請嘗試在沒有PHP的情況下從命令行打開這些URL。