我使用drupal7。清除缓存后,使用wget这样将所有页面缓存回去。
wget --quiet http://xxx.xxx/sitemap.xml --output-document - | egrep -o "http://xxx.xxx[^<]+" | wget -q --delete-after -i -
完成后,我签入数据库cache_page表,所有页面似乎都在那里。但是,如果我使用浏览器访问任何页面,则需要花费一些时间,就像未预先缓存一样。我还注意到,在浏览器中访问该页面之后,下次访问的加载时间非常快。
问题可能是什么?我在Drupal 6页面上成功使用了此方法,没有任何问题。错误日志不显示任何内容,但favicon.ico不存在。
URL的访问日志如下所示:
www.xxx.sk 11.116.206.232--[01 / Jan / 2013:18:09:12 +0100]“ GET / myurl HTTP / 1.1” 200 31532“-”“ Wget / 1.13.4(cygwin)”
我尚未登录
编辑:我将drupal 7.14更新为7.19版本,但没有更改。在查看cache_page表之后,我注意到使用浏览器访问的所有页面都是出于某种奇怪的原因生成的,最后以_900生成,例如:www.example.com/examplepath_900。我以前没有注意到它,因为路径不适合数据库表中的单元格。这就是为什么页面不被缓存的原因。另外,我在同一主机上设置了drupal 7的全新安装,使用wget进行缓存可以按预期工作,而没有任何问题。htaccess或设置文件中也没有问题。也许某些已安装的模块可能会导致这种情况?