2014-10-17 3 views
0

다른 서버 (B)에서 호스팅되는 다른 웹 사이트로 PHP를 통해 HttpRequest를 만드는 서버 (A)에서 호스팅되는 웹 사이트가 있습니다.서버가 웹 사이트의 요청을 차단할 수 있습니까?

사용자가에서 호스팅되는 웹 사이트의 홈페이지에 단추를 클릭 할 때마다, A는 A로부터 이러한 요청을 차단 B 수

B.

의 HTML 페이지를 얻을 수있는 요청을?

+2

예. 차단할 수 있습니다. –

답변

1

짧은 답변 : 가능합니다.
긴 대답 : 실용적이지 않습니다. 서버의 IP 주소를 차단할 수 있지만 서버의 소유자가 정말로 원하는 경우 무료 프록시를 가져 와서 요청을 보내면 서버 A에서 요청이 전송되는지 여부를 알 수 없습니다 또는 유효한 사용자.

+0

호기심, 서버 A가 프록시에서 요청을 보내면 서버 B는 프록시 트래픽을 차단할 수 있습니까? – MananaBumBum

+0

@MananaBumBum 요청이 프록시 또는 아니오를 통해 전송되었는지 여부는 알 수 없습니다. 따라서 서버 B는 결코 알 수 없습니다. – Steve

1

간단한 대답은 예입니다.

특정 IP 주소를 차단하는 것부터 특정 헤더 (또는 누락 된 헤더까지)가있는 차단 요청에 이르기까지 다양한 방법이 있습니다.

일반적으로 핫 링크는 허용되지 않습니다. 핫 링크는 일반적으로 리퍼러 헤더가 있는지 여부와 자신의 사이트와 일치하는지 여부를 확인합니다.

+0

서버 A에서 보낸 HTTP 요청 인 경우 리퍼러는 쉽게 위조 될 수 있습니다. 차단 IP 부분에 관해서는 차단하고자하는 서버를 알고 있어야합니다. – Steve

+0

@Steve 서버 A가 프록시를 통해 위조 된 리퍼러를 사용하여 HTTP 요청을하면 서버 B가 차단할 수 없다는 것을 의미합니까? – MananaBumBum

+0

@MananaBumBum 서버 B가 리퍼러 필드 만 확인한 다음 예 (쉽게 위조 될 수 있음)를 의미합니다. – Steve

0

예. PHP와 방화벽을 통해 여러 가지 방법을 사용할 수 있습니다.

예를 들어, 당신은 또 다른 예는 리눅스/iptables에 사용 B

if($_SERVER['REMOTE_ADDR'] == "whatever-ip-here") die(); 

에 PHP 파일의 상단에 넣을 수 있습니다. 설정에 조금 더 관여하며 A에서 비롯되는 모든 것을 차단합니다 (연결이 거부됩니다).

iptables -A INPUT -s putipaddresshere -j DROP 
관련 문제