安装代理服务器软件
根据你的操作系统选择合适的代理服务器软件:
-
Linux(Ubuntu/Debian):
- 安装 Apache:
sudo apt-get update sudo apt-get install apache2
- 安装 Nginx:
sudo apt-get install nginx
- 安装 Squid:
sudo apt-get install squid3
- 安装 Apache:
-
Windows:
下载并安装 Apache、Nginx 或 Squid。
配置 Apache 代理服务器
-
打开 Apache 的配置文件,通常位于
/etc/apache2/sites-available/default。sudo nano /etc/apache2/sites-available/default
-
修改 Listen 指令,设置代理端口(如 808):
Listen 0...:808
-
启用代理请求和保留 Host 头:
ProxyRequests On <Proxy *> ProxyReverse WithOrigin </Proxy>
-
允许所有访问(或指定特定域名):
Allow all # 或者 Allow Disney.com
-
启用必要的模块:
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_headers_module modules/mod_headers.so
-
保存并退出编辑器。
-
启用配置并重启 Apache:
sudo a2ensite default sudo systemctl restart apache2
配置 Nginx 代理服务器
-
打开 Nginx 的配置文件,通常位于
/etc/nginx/sites-available/default。sudo nano /etc/nginx/sites-available/default
-
设置 listen 端口(如 808):
listen 0...:808;
-
配置反向代理:
server { listen 80; server_name example.com; proxy_pass http://target.com; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } -
保存并退出编辑器。
-
启用 Nginx 配置并重启服务:
sudo a2ensite default sudo systemctl restart nginx
配置 Squid 代理服务器
-
打开 Squid 的配置文件,通常位于
/etc/squid3/conf.d/default.conf。sudo nano /etc/squid3/conf.d/default.conf
-
设置 listen 端口(如 808):
listen 0...:808
-
保持原请求头:
req.header X-Real-Forwarded-For "proxy: client"
-
保存并退出编辑器。
-
启用 Squid 服务:
sudo systemctl start squid3
设置防火墙(Linux)
-
检查防火墙状态:
sudo ufw status
-
打开 808 端口:
sudo ufw allow out 808 sudo ufw allow in 808
-
重启防火墙:
sudo service ufw restart
测试代理服务器
使用 curl 命令测试:
curl -I http://localhost:808
检查返回状态码是否为 200 OK,如果错误,检查配置或防火墙设置。
应用场景
- 中继服务器:将请求转发到目标服务器。
- 反向代理:保护客户端 IP,处理多个请求。
- 缓存服务器:提高访问速度,缓存常用资源。
注意事项
- 防火墙设置:确保代理服务器能够正常收发数据包。
- SSL 配置:如果需要加密,配置 SSL 证书。
- 负载均衡:根据需求配置负载均衡,提高性能。
通过以上步骤,你可以配置并测试代理服务器,确保其正常工作,根据具体需求调整配置,满足不同的应用场景。









