最近一段时间国内、国外的多台服务器都不太平,硬件、软件故障此起彼伏,搞得人疲于应付,不断在各台服务器之间临时转移网站并应对服务器负载方面的问题。
到昨天终于算是把一些临时放在其它服务器(22、181)上的网站基本都迁移回返修重新上架的服务器(17),重装系统后有好些细节(例如MySQL版本、文件权限、PHP版本、phpmyadmin的运行)会出现问题,还有不少后续工作要进行。
17服务器这次更换电源、硬盘后重新安装系统,就没有再使用Squid做反向代理缓存加速,直接让Apache应对Web访问,这样也不需要再在MediaWiki的LocalSettings.php和Drupal的settings.php中设置proxy,另外新部署的防采集程序也可以准确获取来源IP。
为了在更多的服务器上都部署防采集程序并简化、统一服务器的设置,昨天晚上把22服务器的Squid也停掉了,步骤:
- 修改/usr/local/apache2/conf/httpd.conf和extra/httpd-vhost.conf中的内网IP设置为*;
- 用/usr/local/squid/sbin/squid -k shutdown停掉运行中的squid,等待几分钟;
- 用/usr/local/apache2/bin/httpd -k restart重启apache,等待几分钟;
- 修改/etc/local.rc,去掉启动squid;
- 修改/etc/crontab,去掉squid日志截转;
- 修改/etc/hosts,去掉域名到内网IP的映射;
- 修改MediaWiki的LocalSettings.php和Drupal网站的settings.php,去掉反向代理设置。
然后就可以启用自己编写的防采集程序了,让其中的$_SERVER['REMOTE_ADDR']准确获取访问者IP,不用读取HTTP_X_FORWARDED_FOR和HTTP_VIA来判断。
评论