簡體   English   中英

Squid 代理驗證失敗

[英]Squid Proxy Authentication fails

我按照本教程來設置我的代理服務器。 安裝 Squid 和 apache2-utils

使用 htpasswd 創建用戶名和密碼

sudo htpasswd /etc/squid3/squid_passwd myusername

將以下幾行附加到 squid.conf

auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/squid_passwd
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users

重新啟動魷魚服務器。 並在cmd中檢查用戶名和密碼。 它說好的

/usr/lib/squid3/ncsa_auth /et/squid3/squid_passwd
myusername password
OK

但我無法從 PHP 訪問

$proxy = "111.11.11.11:8220"; // my squid ip and port
$proxyauth =   base64_encode('username:pass');   // Tried without base64_encode also  
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
curl_setopt($ch, CURLOPT_PROXYUSERPWD,  $proxyauth);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
$curl_scraped_page = curl_exec($ch);
echo $curl_scraped_page;
if(curl_error($ch))
{
    echo 'error:' . curl_error($ch);

}
curl_close($ch);

但我收到 X-Squid-Error: ERR_ACCESS_DENIED 錯誤

您使用了錯誤的身份驗證庫來訪問密碼文件

auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/squid_passwd

應該是

auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/squid_passwd

我在使用https://createproxy.com創建代理服務器時遇到了這個問題

經過 2 次完全重寫和 200 次錯誤嘗試后,我將魷魚用戶名更改為僅包含字符(沒有與數字混合的字符串)。 它開始工作! 直到今天都不知道為什么只需要使用字符作為魷魚用戶名。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM