Проверка ссылки

alexon

Новичок
Проверка ссылки

Может кому пригодится. Написал функцию проверки ссылки. Позволяет соединяться через прокси. Производит аутентификацию через .htaccess.
PHP:
$_cf[proxy]="proxy.ru:3128";
function urlExists($uri,$user="",$pass="",$proxy=0) {
	global $_cf;
		$url=ereg_replace("http://","",$uri);
		list($domain, $path)=explode("/",$url,2);
		list($domain,$port)=explode(":",$domain);
		$path="/".$path;
		if ($port=="") {$port=80;}
		if ($proxy==1) {
			$path=$uri;
			if ($_cf[proxy]!="") {
				list($domain,$port)=explode(":",$_cf[proxy]);
				if ($port=="") {$port=3128;}
			}
		}
		$f=@fsockopen($domain,$port,$errno,$errstr,5);
		@fputs($f,"GET $path HTTP/1.1\r\n".(($pass!="") ? "Authorization: Basic ".base64_encode($user.":".$pass)."\r\n" : "")."Host: $domain\r\n\r\n");
		$g=@fgets($f, 1024);
		@fclose($f);
		if (ereg("HTTP/1.1 200 OK", $g)) {
			return true;
		} else {
			return false;
		}
}
 

ProGrammer

Guest
Re: Проверка ссылки

Там может быть не только HTTP/1.1 200 OK, а например HTTP/1.0 200 OK.
 

alexon

Новичок
Re: Re: Проверка ссылки

Автор оригинала: ProGrammer
Там может быть не только HTTP/1.1 200 OK, а например HTTP/1.0 200 OK.
Ну так оно конечно, можно добавить и такую проверку.
А если создавать более универсальную функцию - то нужно сделать еще и проверку на аутентификацию через форму. Только тут придется передавать названия полей в форме вдобавок.
 

Unregistered-2

Guest
Чегой-то "собак" много, нет ?
Я их как-то не люблю :))
 

HEm

Сетевой бобер
Re: Re: Re: Проверка ссылки

Автор оригинала: alexon
Ну так оно конечно, можно добавить и такую проверку.
А если создавать более универсальную функцию - то нужно сделать еще и проверку на аутентификацию через форму. Только тут придется передавать названия полей в форме вдобавок.
Ну и собственно.... Если хочешь поделиться своенй функцией, делай ее bulletproof, чтоб работало в любых условиях...
 
Сверху