Проверка подлинности прокси Squid не удалась

Я следил за этим руководство настроить мой прокси-сервер.
Установленные 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

перезапустил squid сервер. И проверил логин и пароль в 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 ошибка

2

Решение

Вы использовали неверную библиотеку аутентификации для доступа к файлу паролей

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
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]