如果想加速使用大量模板但内容基本静态的MediaWiki网站,我希望设置一个Squid服务器。详情请参见
https://www.mediawiki.org/wiki/Manual:PurgeList.php
并且
https://www.mediawiki.org/wiki/Manual:Squid_caching
然后,使用一个脚本进行wget/curl调用,访问Mediawiki的所有页面,以“自动”方式填充鱿鱼服务器的缓存。 我的期望是,在此过程之后,每个页面都在鱿鱼缓存中(如果我使其足够大),然后每次访问都将由鱿鱼处理。 如何使其工作? 例如:- 如何检查我的配置?
- 如何找出需要多少内存?
- 如何检查页面是否在squid3缓存中?
我首先找出了如何使用以下命令安装鱿鱼:
并且
我通过ifconfig eth0找到了我的IP地址xx.xxx.xxx.xxx(此处未公开)。
在/etc/squid3/squid.conf中,我放置了以下内容:
http port xx.xxx.xxx.xxx:80 transparent vhost defaultsite=XXXXXX
cache_peer 127.0.0.1 parent 80 3130 originserver
acl manager proto cache_object
acl localhost src 127.0.0.1/32
# Allow access to the web ports
acl web_ports port 80
http_access allow web_ports
# Allow cachemgr access from localhost only for maintenance purposes
http_access allow manager localhost
http_access deny manager
# Allow cache purge requests from MediaWiki/localhost only
acl purge method PURGE
http_access allow purge localhost
http_access deny purge
# And finally deny all other access to this proxy
http_access deny all
然后我配置了我的apache2服务器。
# /etc/apache2/sites-enabled/000-default.conf
Listen 127.0.0.1:80
我添加了。
$wgUseSquid = true;
$wgSquidServers = array('xx.xxx.xxx.xxx');
$wgSquidServersNoPurge = array('127.0.0.1');
到我的LocalSettings.php文件中
然后我重新启动了apache2,并使用以下命令启动了squid3
service squid3 restart
并尝试首次访问
wget --cache=off -r http://XXXXXX/mediawiki
结果是:
Resolving XXXXXXX (XXXXXXX)... xx.xxx.xxx.xxx
Connecting to XXXXXXX (XXXXXXX|xx.xxx.xx.xxx|:80... failed: Connection refused.