最近,我注意到我的网站运行速度越来越慢。我在我的服务器上发现了 8GB 的 Apache 日志(我在 Debian 6 服务器上运行 Play!Framework Web 应用程序)并且带宽完全超载。对于一个每天只有几次浏览量的小型个人网站来说,这完全是疯狂的。
在调查和收集了一些信息后,我发现了我的错误:在我的 Apache 配置中,我取消了“ProxyRequests On”行的注释,因此我的服务器被免费用作世界上每个人的免费代理。真可惜。
至少在那个时候,我调整了我的防火墙以限制并发连接,并为 Apache2 安装了 mod_qos。
但是,现在不是像一个好的免费代理那样将请求重定向到它们的目的地,而是所有传入的请求都被重定向到我的 Web 应用程序,无论域是什么。例如,如果有人使用我的服务器,认为它仍然是在 yahoo 上搜索“年轻的裸体儿童”的有效代理,他就会访问我的网站。我想现在你明白我的意思了。
那么,如果对“ http://yahoo.com/whatever ”的请求发送到我的服务器,我应该怎么做,该请求被拒绝?
这是我当前的配置:
在/etc/init.d/apache2/sites-available/mysite.fr:
ProxyRequests Off NameVirtualHost *:80 <VirtualHost *:80> ServerName mysite.fr ServerAlias *.mysite.fr ProxyPreserveHost On ProxyPass / http://127.0.0.1:9000/ retry=0 ProxyPassReverse / http://127.0.0.1:9000 # Uncomment the line below if your site uses SSL. #SSLProxyEngine On </VirtualHost>
在/etc/init.d/apache2/mods-available/proxy.conf:
ProxyRequests Off <Proxy *> AddDefaultCharset off Order deny,allow Allow from all </Proxy>