php - 在 PHP 中编写透明的 HTTP 代理脚本

标签 php http proxy

是否有可以在我的网络服务器上托管的简单转发/透明 php 代理脚本?这些是我的条件:

  1. 我使用的是免费网络托管,所以我几乎无法控制我的机器。否则我可以使用 Perl 的 HTTP::Proxy 模块。这意味着没有根密码。它确实运行 php。

  2. 我已经有一个在端口 80 上运行的服务器。我的意思是我想在我的服务器上放置一个 php 脚本作为 index.php 来转发所有请求。

  3. 我不想使用像 PHProxy 或 Glype 这样的脚本访问网站,然后输入 URL。我想要一个服务器,这样我就可以在 Firefox 或 IE 或任何代理设置中输入 proxy.example.com:80,它会将所有请求转发到服务器。

  4. 我希望它传递 USER_AGENT 环境变量(即浏览器),而不是将其自身设置为 USER_AGENT

  5. 我无法启动新的守护进程。我的服务器不允许。

有没有脚本可以做到这一点?如果有,是哪一个?

最佳答案

不,我很确定这在共享主机上是不可能的。它将使您的条件号 3 失败。这需要 Web 服务器级别的支持(例如使用 Apache 的 mod_proxy)

为此,您必须设置远程服务器才能处理代理请求。任何理智的网络服务器都不会提供这种可能性。

关于php - 在 PHP 中编写透明的 HTTP 代理脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4708630/

相关文章:

c# - .net 的 Phalanger 和 php 库

php - 将 Firebase token 发送到自己的服务器不起作用

c# - 在 C# 应用程序中使用 FastCGI 应用程序

php - 如何在php中保存多维数组

javascript - 类型错误 : map is not a function

java - 如何在通过代理 (Tor) 浏览时阻止 Java 预解析我的主机?

Python 套接字.gaierror : [Errno 11001] getaddrinfo failed

PHP curl 问题 - 尝试发送 XML post 请求

javascript - 我如何在 AngularJS 的索引页面上使用来自 Node.js 的信息

c - fread 在 socket 上停滞但 get 没有?