2016-05-03 30 views
0

我有一個ASP.NET網站,並託管共享主機,一切工作正常,但最近我有要求通過cURL從PHP腳本調用網頁的一頁,但在執行php腳本通過php-cgi.exe我得到下面的錯誤;HTTP錯誤403.0 - ModSecurity。操作您沒有權限查看此目錄或頁面

HTTP錯誤403.0 - ModSecurity操作您無權查看此目錄或頁面。

備註我可以在不登錄網站的情況下從瀏覽器瀏覽該頁面。

什麼可能是這個錯誤的可能原因,有人可以指導我解決這個問題?

PHP腳本

<?php 
    $curl = curl_init(); 
    curl_setopt($curl, CURLOPT_URL, "http://<domainname>//<filename>.aspx"); 
    curl_exec($curl); 
    curl_close($curl); 
?> 

提前感謝!

+0

您的URL應該是錯誤的,對於響應狀態URL指向目錄而不是文件。 – Gusman

+0

@Gusman我交叉檢查URL是我在瀏覽器中使用的相同URL。我無法分享確切的URL,但「http://domainname/filename.aspx」是我在瀏覽器中訪問並在php腳本中使用的url。 –

+0

嗯,協議是一樣的(http vs https)?我發現了一些配置錯誤的服務器根據協議作出不同響應的情況。否則檢查看起來微妙的任何差異,必須有問題(不同的方法(獲得,後,放)?,在域名的任何區別?)。 – Gusman

回答

0

經過分析問題發現錯誤是由於用戶代理沒有在cURL請求中設置的。

更新的PHP腳本;

<?php 
    $curl = curl_init(); 
    curl_setopt($curl, CURLOPT_URL, "http://<domainname>//<filename>.aspx"); 
    curl_setopt($curl,CURLOPT_USERAGENT,"useragentvalue"); 
    curl_exec($curl); 
    curl_close($curl); 
?> 
相關問題