比方说,我有一个专用的IP主机的虚拟主机,我可以做一个卷曲的PHP脚本,接收一个URL,获取它,并输出它,并使所有这些作为代理服务器,所以我可以把我的VPS IP浏览器的代理设置。如何使用PHP脚本创建代理?
有没有办法做到这一点?
注意:请不要建议我一个像glype的基于web的代理。
谢谢
比方说,我有一个专用的IP主机的虚拟主机,我可以做一个卷曲的PHP脚本,接收一个URL,获取它,并输出它,并使所有这些作为代理服务器,所以我可以把我的VPS IP浏览器的代理设置。如何使用PHP脚本创建代理?
有没有办法做到这一点?
注意:请不要建议我一个像glype的基于web的代理。
谢谢
是的,你可以(见贾斯珀的答案)。这将有效地使您自己的基于Web的代理。
但是,考虑到它是一个VPS,我会建议使用SSH SOCKS代理,因为它会更容易,并且将通过加密隧道运行到VPS。
使用Apache与mod_proxy
和mod_proxy_http
。请参阅docs。
您可以通过https访问代理,有效加密您的计算机和VPS之间的所有流量。
谢谢,那么我应该把什么端口放在设置中,如果我将mod_proxy添加到htaccess中? – Ryan 2010-08-26 23:57:27
@David你不能把它放在.htaccess它必须在'httpd.conf'或其中的某个文件中。该端口是任意的。 – Artefacto 2010-08-26 23:59:29
mod_proxy_http是使用从apache运行到“该服务器”的反向代理(高速缓存代理)。它可以是nginx,varnish,polipo,haproxy或其他许多。 这不是创建一个vnc服务器,而是从机器上安装的另一个代理或远程机器上请求apache本身的查询。 (la cloudflare风格)。这可以提高安全层,并可能为所有人虚拟缓存数据:) – erm3nda 2015-03-04 08:24:13
您可以检出this PHP proxy that uses cURL。这并不完美(我正在修复它以处理PUT请求,应用程序/ JSON POSTS等)。问题是你需要配置Web服务器来重写所有对这个文件的文件名的请求,以便你可以正确地代理它们。
您可以使用Tor代理,这里是脚本:
<?php
function tor_new_identity($tor_ip='127.0.0.1', $control_port='9051',$auth_code='saad'){
$fp = fsockopen($tor_ip, $control_port, $errno, $errstr, 30);
if (!$fp) return false; //can't connect to the control port
fputs($fp, "AUTHENTICATE $auth_code\r\n");
$response = fread($fp, 1024);
list($code, $text) = explode(' ', $response, 2);
if ($code != '250') return false; //authentication failed
//send the request to for new identity
fputs($fp, "signal NEWNYM\r\n");
$response = fread($fp, 1024);
list($code, $text) = explode(' ', $response, 2);
if ($code != '250') return false; //signal failed
fclose($fp);
return true;
}
?>
调用函数“if (tor_new_identity('127.0.0.01', '9051')) {//do stuffs here}
” 但你必须在VPS 1日安装使用Tor系统。
此脚本是http连接的套接字包装器。这很好,可以用来隧道到另一个袜子代理。 TOR是一个袜子代理。 我想它不会打开浏览器来输入代理。他想在浏览器中配置代理,不? – erm3nda 2015-03-04 08:18:50
你错了,你在问什么。你问关于PHP脚本,但不喜欢Glype。至少还有4个PHP的代理开发。
但事实上,没有人会让你与它连接你的浏览器很少的,因为你需要实现TCP包装连接。这是你通常使用cURL或直接原始套接字获得http接口的方式。
您需要一个SO应用程序,而不是脚本。
我会推荐你Squid代理的Linux(方便和干净的手册http://es.kioskea.net/faq/613-instalar-un-servidor-proxy-http-squid) 我会建议你不要使用Windows(即使我这样做),但FreeProxy是真棒。 (在http://www.softpedia.com/get/Internet/Servers/Proxy-Servers/FreeProxy.shtml下载)
代理的另一方面,你有VPN。 安装并连接到VPN,私有SSH保护的专用网络到您的VPS更好也更容易。这将通过与VPS的加密连接从您的计算机绕过所有流量。
您将拥有VPS的IP以及双方的VPS /桌面“本地”连接。 (例如,不需要除VPN之外的开放端口的Web服务器)
正如我的回答所指出的,我没有回答这个问题,所以我删除了我的答案,在答案上留下了一个悬挂指针。 – Jasper 2010-08-27 00:01:29
有3种可以使用的类型。 1-网页代理(网页界面),这是http代理。 //通常的WEB 2 http代理,一个程序,一个干净的http协议代理//通常的代理socks proxy(v4/5),一个原始套接字连接。 //强大,更难 Tor实际上是一个套接字代理,但涉及更多。 更多关于我的回答。 Thx问这个问题。 – erm3nda 2015-03-04 08:26:10