2015-05-02 89 views
0

我使用此代碼在下載前獲取有關網頁和文件的信息。失敗返回200與curl_getinfo

$curl = curl_init(); 
curl_setopt($curl, CURLOPT_URL, $url); 
curl_setopt($curl, CURLOPT_NOBODY, 1); 

curl_exec($curl); 

if (curl_getinfo($curl, CURLINFO_HTTP_CODE) == 200) 
{ 
    echo $info['active'] = true; 
    echo $info['url'] = $url; 
    echo $info['size'] =  curl_getinfo($curl,CURLINFO_CONTENT_LENGTH_DOWNLOAD); 
    echo $info['type'] = curl_getinfo($curl,CURLINFO_CONTENT_TYPE); 

} 
else 
    echo 'not active'; 

它適用於文件或URL格式是這樣的:

www.example.com/film.mp4 
www.example.com/film.php 

但並非沒有作品擴展名在URL..it還給我「不積極」;

www.example.com/film 
www.example.com/film/test 

我該如何解決它?

UPDATE

它retun 403錯誤與CURLINFO_HTTP_CODE

回答

0

這不是捲曲的問題;當您指定一個沒有文件的URL時,您嘗試從中提取數據的網站將返回403。 嘗試自己在瀏覽器中加載這些頁面以查看。

0

403禁止 - 服務器理解請求,但拒絕履行請求。

如果您的HEAD請求出現403錯誤,並且您的URL是目錄(不是文件名),那麼這意味着服務器拒絕公開目錄內容,並且沒有默認頁面(index.html,index.php等)顯示。這實際上意味着在該位置沒有任何內容可以捲曲,並且可以將其視爲404錯誤(除非您需要執行一些未在您的問題中描述的額外身份驗證)。

Ref:HTTP status codes