如何让WPTouch和wp super cache设置同时工作

IIS7下让你的WP完美的驱动wp-super-cache
wordpress在IIS7下如何启用wp-super-cache的高级功能,很多人都只是知道有这么一个插件,开启了之后却发现并不好用。之所以不好用,无外乎没有完整的开启这个插件的功能,这个插件有2部分组成,第一部分就是wp-cahe,这个功能就是生成缓存,大部分人也只是做到这一点。
这个插件有3种模式,半途放弃的无外乎都是IIS的用户,因为IIS无法开启第一个模块,而第二个模块仅仅是个残废的WP-CAHE,难道IIS的用户真的就这样残废掉了吗。
super-wp-cache
肯定不是的,如果你是IIS7或者IIS7.5,那么就可以完整的使用wp-super-cache。
首先大家要明白一点,IIS不能开启第一个模块是因为无法复写,而且默认的规则全是APACHE的规则,所以在IIS7和IIS7.5拥有这一功能的前提下,只要我们把Apache的规则转换成IIS7和IIS7.5的规则就可以完成的使用这一插件。当然错误提示依旧存在,不过选择无视吧。
下面我把我修改过的规则发一下
&?xml version=&1.0&P?&&configuration&&system.webServer&&rewrite&&rules&&rule name=&WPSuperCache& stopProcessing=&true&&&match url=&^(.*)$& ignoreCase=&false& /&&conditions&&add input=&{REQUEST_METHOD}& negate=&true& pattern=&POST& ignoreCase=&false& /&&add input=&{QUERY_STRING}& negate=&true& pattern=&.*=.*& ignoreCase=&false& /&&add input=&{HTTP_Cookie}& negate=&true& pattern=&^.*(comment_author_|wordpress|wp-postpass_).*$& ignoreCase=&false& /&&add input=&{HTTP_USER_AGENT}& pattern=&^.*(2.0\ MMP|240&320|400X240|AvantGo|BlackBerry|Blazer|Cellphone|Danger|DoCoMo|Elaine/3.0|EudoraWeb|Googlebot-Mobile|hiptop|IEMobile|KYOCERA/WX310K|LG/U990|MIDP-2.|MMEF20|MOT-V|NetFront|Newt|Nintendo\ Wii|Nitro|Nokia|Opera\ Mini|Palm|PlayStation\ Portable|portalmmm|Proxinet|ProxiNet|SHARP-TQ-GX10|SHG-i900|Small|SonyEricsson|Symbian\ OS|SymbianOS|TS21i-10|UP.Browser|UP.Link|webOS|Windows\ CE|WinWAP|YahooSeeker/M1A1-R2D2|iPhone|iPod|Android|BlackBerry9530|LG-TU915\ Obigo|LGE\ VX|webOS|Nokia5800).*& negate=&true& /& &add input=&{DOCUMENT_ROOT}\wp-content\cache\supercache\{HTTP_HOST}\{R:1}\index.html& matchType=&IsFile& /&&/conditions&&action type=&Rewrite& url=&/wp-content/cache/supercache/{HTTP_HOST}/{R:1}/index.html& /&&/rule&&rule name=&wordpress& patternSyntax=&Wildcard&&&match url=&*&/&&conditions&&add input=&{REQUEST_FILENAME}& matchType=&IsFile& negate=&true&/&&add input=&{REQUEST_FILENAME}& matchType=&IsDirectory& negate=&true&/&&/conditions&&action type=&Rewrite& url=&index.php&/&&/rule&&rule name=&WWW 301Redirect& stopProcessing=&true&&&match url=&.*& /&&conditions&&add input=&{HTTP_HOST}& pattern=&^$& /&&/conditions&&action type=&Redirect& url=&/{R:0}&redirectType=&Permanent& /& &/rule&&/rules&&/rewrite&&/system.webServer&&/configuration&
我上面的规则是完整的WP的规则,所以有伪静态和301的规则,当完整的放入根目录,启用wp-super-cache,然后你可以刷新下主页,看下源代码
&!& Dynamic page generated in 1.070 seconds. &&&!& Cached page generated by WP-Super-Cache on
13:52:20 &&&!& Compression = gzip &&
在代码底部出现这一提示,就说明你完整的在IIS7下开启了wp-super-cache。顺便说一下,在开启了这一插件的同时,你可以去掉GZIPY了,因为wp-super-cache自带GZIP组件。
转载请注明:
注:相关网站建设技巧阅读请移步到频道。
最新图文推荐
最新专栏文章
大家感兴趣的内容
网友热评的文章
seajs.config({
base: "/resource/passapi/scripts/"
seajs.use('seajs/seajs-css');
seajs.use(['artdialog/src/dialog-plus'], function (dialog) {
$('#favorite').on('click', function(){
$.getJSON('/passapi.php?op=userstatus&callback=?', function(data){
if (data.status == 1) {
var _this = $('#favorite').find('span');
$.getJSON('/?app=favorite&controller=favorite&action=add&jsoncallback=?&contentid='+contentid, function(json){
if(json.state){
_this.html('WordPress网站搬家后需重新设置WP_Super_Cache | 水景一页
Haoxian Zeng's personal website
您在这里:
WordPress网站搬家后需重新设置WP_Super_Cache
在之前的一篇文章“”中介绍了一步一步将使用WordPress搭建的网站搬到新服务器的方法。但是却没有对相关插件,比如WP_Super_Cache做说明。这几天使用过程中发现某些插件需要重新设置,比如WP_Super_Cache、Google sitemap generator等。这里先说明一下WP_Super_Cache的重新设置问题。
更新:经过实践,实际上不用那么麻烦,请参考一文。
在安装WP_Super_Cache插件时,它会自动在 %wp-content% 目录下新建2个文件,分别是 advanced-cache.php 和 wp-cache-config.php,其中 advanced-cache.php文件中会保存服务器的目录信息,并用于WP_Super_Cache的正常运行。该目录信息是你所使用服务器上的文件目录信息,而不是相对于网站的访问路径,不同的服务器空间,该目录信息并不一样,即使你并没有改变域名和WordPress按照路径等,所以需要重新设置。
要检查WP_Super_Cache是否已经正常工作,可以打开你的网站(运行于该WordPress之上的)页面,然后右键单击页面上的空白部分,选择“查看源文件”,并翻页到最后,看是否有类似下面的信息:
&!-- Dynamic page generated in 4.970 seconds. --&
&!-- Live page served on
10:58:12 --&
如果有该信息,说明WP_Super_Cache工作正常,否则就需要重新设定。不能正常工作时可能看到的错误信息是:
&!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! --&
要重新设置,需要先查看服务器目录结构。可以通过服务器提供的空间管理面板(如 VistaPanel 等工具)查看,类似于:
/home//xth_123456
的目录信息。这是服务器上你的网站文件所在目录的路径。记下此信息,并打开 %wp-content% 目录的 advanced-cache.php 文件,将其中的相应部分替换成正确的路径。如:
'/{服务器上你的网站文件所在目录的路径}/htdocs/{你的WordPress安装目录}/wp-content/plugins/wp-super-cache/' . 'wp-cache-phase1.php'
修改完成后可以重新按照上述方法查看WP_Super_Cache是否正常工作。
当然,你也可以完全删除WP_Super_Cache然后重新安装。删除时请注意先禁用该插件,然后执行删除。删除后请查看 %wp-content% 目录下是否还有 advanced-cache.php 和 wp-cache-config.php 这两个文件,如果有,请手动删除。然后查看 .htaccess 文件,删除其中的如下
# BEGIN WPSuperCache
……………………
# END WPSuperCache
部分内容。此时再重新安装该插件并进行设置即可正常工作。
本文发表于。永久链接:<>。转载请保留此信息及相应链接。
标签 ,,,
订阅 & 关注
近期评论发表在《》[…] 之前为了追赶潮流强制启用了一段时间的全站 HTTPS 加密连接,结果发现访问统计中日访问 [...]发表在《》你好,你这个我猜测可能是版本的问题?WP-Table Reloaded 已于两年前升级为 TablePres [...]Lin发表在《》1.9.4版本。怎样合并单元格?我按照提示,跨列合并没有问题,但跨行合并出了问题。我想合并A1和A2,B1和 [...]发表在《》[…] ,SHA1 快要被完全废弃了,升级一下,使用 SHA2。尽管 Let [...]发表在《》如果有免费的,而且看着还挺好,干嘛要用收费的。当然最根本的问题是,我这小站对SSL没有特别需要。
,可参考我的关注国内外最新web前端开发技术:HTML5、CSS3、jQuery插件、WordPress插件和WordPress主题,关注用户体验优化UEO及周边SEO、SEM,提供最新网站前端开发资讯。
【WordPress插件】安装WP Super Cache常见问题
【WordPress插件】安装WP Super Cache常见问题
摘要:安装WP Super Cache过程和使用中常见问题总结
我如何知道博客已被缓存?
查看你的站点的任意页面的源代码。当某个页面是初次创建,你会在源代码末尾看到这样的文本:“Dynamic page generated in XXXX seconds.” 和“Cached page generated by WP-Super-Cache on YYYY-MM-DD HH:MM:SS”。在刷新时,缓存页面会显示相同的时间戳,所以在检查时请稍等几秒。
如果你启用了压缩功能, 文本“Compression = gzip ”也会添加。 如果禁用了压缩,并且这个页面以静态html方式显示,文本“super cache”会添加在其中。
另一种检查你的缓存页面由PHP脚本处理或是由静态缓存而来的方法是查看HTTP header。
WP-Cache (PHP) 缓存页面会有这样的Header“WP-Super-Cache:WP-Cache”。 你可以使用名为Live HTTP Headers的FireFox扩展来检验header。 同时,你还应该查看位于wp-content/cache/supercache/主机名/ 目录下的静态缓存文件。
为什么WP-Super-Cache比WP-Cache好?
这个插件基于非常棒的WP-Cache插件而来,因此具有那个插件所有的优点。 除此之外,它还创建使每次访问Blog都采用单一格式的每个页面的副本,这样可以使服务器更快响应请求。 它几乎和你在浏览器中保存一个页面并把它上传上去替换你的主页一样快。
评论和其他博客上的动态部分会立即更新吗?
评论会在它们通过审核后立刻显示,这取决于博客主人的评论策略。其他页面上的动态元素可能不会更新,除非它们由Javasript,Flash,Java或其他客户端浏览器语言构成。这个插件会真正创建静态html页面,在这些文件被调用时,没有PHP代码执行。 “Popularity Contest”就是一个在缓存环境下不会工作的插件。那些为移动设备用户显示不同内容的插件也有可能不会正常工作。
Super Cache的压缩会拖慢我的服务器吗?
不会,相反它还会加快你的服务器速度。
Super Cache文件被压缩和储存时,大负载的压缩动作只会出现一次。这些文件一般都非常小,发送到访客浏览器上也会比未经压缩的快很多。其结果是,你的服务器会花费更少的时间在传输上,于是也就会节省CPU时间和带块,并使响应下次请求更快速。
为什么 WP UserOnline,Popularity Contest, WP Postratings 或某个插件在我的博客上不再工作或更新状态了?
WP-Super-Cache插件缓存整个页面,所以有些每次页面调用都需要运行PHP代码的插件就不会正常工作了。
想避免这个问题,这个插件必须使用Javascript或AJAX来更新。 如果这个插件要在页面上显示信息,那么也必须有Javascript请求。
为什么这个插件不默认缓存搜索引擎机器人的请求?
这些机器人一般只访问每个页面一次,如果这个页面并不热门,完全没有必要创建缓存文件并让它在你的服务器上闲置。
为什么不创建我站点上所有页面的缓存文件呢?
同刚才那个问题一样,没有必要缓存没人访问的页面。大量的缓存文件会减慢垃圾收集系统的速度,因为它会尝试检查每个文件。同时它还可能给主机商带来问题。 当你的服务器遇到磁盘错误问题时可能需要更长的时间来检查文件。还记得用scandisk或者fsck检查大驱动器时用的时间吗?
1、一个分类页面取代了我的首页…
很小比例使用下列设置的网站会有这样的问题:
使用静态页面作为首页。
使用 /%category%/%postname%/ 永久链接结构
有时一个分类页面会作为站点首页缓存而取代原有静态页面。作者无法重现这个问题,但是有个简单的办法可以解决问题,即将插件设置为半开模式。 对一般的访问量来说,你不会发现你站点的速度有什么不同。
问题处理:
如果你安装插件后发现有什么不正常的现象,可以从这些方面进行检查:
2、服务器是否可写 wp-content 目录?
wp- content目录中是否有wp-cache-config.php 文件?
如果没有,复制 wp-super-cache/wp-cache-config-sample.php文件到 wp-content/wp-cache-config.php,并确认 WPCACHEHOME 指向正确的地方。
wp-content 目录下是否有advanced-cache.php文件?
如果没有,你需要复制 wp-super-cache/advanced-cache.php到 wp-content/ 目录下,编辑这个文件,修改路径使它指向 wp-super-cache 文件夹。
如果页面都没有被缓存,移除 wp-content/advanced-cache.php文件并根据上述要求重新创建它。
确认wp-config.php文件中的这一行内容在 “require_once(ABSPATH.’wp-settings.php’);”之前:
define( ‘WP_CACHE’, true );
试试再次打开 设置 –& WP Super Cache页面斌启用缓存。
看看 wp-content/cache/supercache/目录。有文件夹和文件在里面吗?
3、php error_log 错误记录里有什么信息?
如果当super cache安装后你的浏览器一直要求你保存文件而不是显示页面,你必须禁用Super Cache 压缩。访问 设置-& WP Super Cache页面禁用它。
这个插件在PHP安全模式启用时无法很好地工作。 必须由你的服务器管理员禁用这个功能。
如果页面有时可以被超级缓存而有时没有,其原因可能是你的博客部分访客由 “www”前缀访问而有些不是。如果你在使用老版本的Wordpress,你应该选择安装 Enforce www preference 插件。 最新版本的Wordpress可以重定向它们(你应该一直使用最新版本的Wordpress!)。
在Dreamhost上的个人服务器用户如果遇到有关CPU占用增加的错误,则应该编辑 wp-content/wp-cache-config.php文件并设置缓存目录到“/tmp/”目录。
类似“failed to acquire key 0x152b: Permission denied in…”或“Page not cached by WP Super Cache. Could not get mutex lock.” 这样的文件锁定错误表明你可能必须使用文件锁定功能。编辑 wp-content/wp-cache-config.php 并取消注释“$useflock = ture” 或设置 $semid 为一个不同的值。你还可以把从管理页面禁用文件锁定作为最后一招使用。
4、确认服务器可写 cache/wpcachemutex.lock 文件
缓存文件不能放置在NFS或Samba或NAS共享上。 必须将其放置在服务器本地磁盘上。只有在缓存文件夹在本地机器上时,文件锁定和删除过期文件功能才能正常工作。
如果Wordpress无法找到 wp-cron.php文件,旧缓存文件的垃圾收集特性就无法工作。如果你的主机名定为127.0.0.1,可能会阻止垃圾收集特性正常运作。检查你的 access_log,寻找有关wp-cron.php的条目。它们是否返回 404(文件没找到)或200 代码?如果返回404或你在哪儿都没有看到wp-cron.php文件,Wordpress可能在错误的地方寻找这个脚本了。你应该联系你的服务器管理员来修正这个问题,或者在Unix服务器上编辑 /etc/hosts 并移除下面的内容。你的主机名必须设置为外币IP地址。查看/wp-cron-issues/ 获得更多信息。
127.0.0.一行类似“127.0.0.1 localhost localhost.localdomain” 的内容是可以的。
如果旧页面通过Supercache展示给你的访客,你可能缺少某些Apache模块(如果你没用Apache的话,那就可能是类似功能的东西)。
3个模块是必需的: modmime, modheaders 和mod_expires。后两个对于确保浏览器能够调用你站点上已存在页面的新版本是非常重要的。
“WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed!”
这个错误信息如果出现在每个页面的末尾的话,用你常用的编辑器打开 wp-content/advanced-cache.php文件,看看指向wp-cache-phase1.php的路径是否正确?如果不正确的话缓存引擎就不会调用。
如何卸载WP Super Cache?
编辑你的插件目录中的 wp-super-cache/uninstall.php文件,将 UNINSTALL_WPSUPERCACHE设置为一个非空值。
define( ‘UNINSTALL_WPSUPERCACHE’,  );打开你的浏览器并直接调用 wp-content/plugins/wp-super-cache/uninstall.php文件。 你必须登录并确认这个动作。如果你没有立即删除这个插件,在这个脚本运行之后,请注释掉上面这行 define() 以免其他人运行它。
如何手动卸载:
从wp-config.php文件中移除WP_CACHE定义,内容应该类似这样 define(‘WP_CACHE’, true );
从后台页面清理缓存并从插件页禁用插件
从你的.htaccess文件中移除Super Cache mod_rewrite 规则
移除wp-content/advanced-cache.php和wp-cache-config.php文件
删除 wp-content/cache目录
从你的插件目录中删除wp-super-cache
如果所有办法都失败并且你的网站已不能打开
从wp-config.php中移除WP_CACHE定义: define( ‘WP_CACHE’, true );
移除插件写入.htaccess文件中的规则(请看上面)。
删除插件文件夹中的wp-super-cache目录
另外,可选删除 advanced-cache.php, wp-cache-config.php 和在wp-content/目录中的缓存文件夹。
自定义缓存
现在可实现通过 add_cacheaction() 函数hook进缓存进程。
可用三个hook:
‘wpcachegetcookiesvalues’ – 修改原WP Cache使用的键。
‘add_cacheaction’ – 在phase2运行。 允许一个插件添加WordPress hooks。
‘cacheadminpage’ – 在管理页面运行。使用它来修改页面,可能通过添加新的设置选项来实现。
这里还有一个常用WordPress Filter。 使用 “docreatesupercache” filter 来自定义缓存前的检查。 这个filter接受一个参数。 输出WP-Cache的wpcachegetcookies_values() 函数。
你可以继续阅读相关【 , 】的文章。
你可能感兴趣的文章
版权所有 &
ziren.org 子任 关注国内外最新技术:、,提供最新资讯、网站建设知识和技巧。@ 20:51:28
· 作者
· 归类于
你可能会感兴趣的内容
最近基于实现了一个代码高亮的插件 — ,测试了下效果还不错,所以我马上把全站的代码高亮插件换成了这个。
这里是,我会把这个plugin的最新情况更新在这里。
code-prettify的特点
完全由javascript完成代码高亮,不占用服务器资源
使用简单,只要用&pre&&code&和&/code&&/pre&包住代码,发布即可,这是wordpress编辑器自带的quicktag。
没有添加额外的hook,所以不会和别的wordpress插件产生冲突,绿色无污染
载入速度很快,因为js是在页面尾部加载的,不会堵塞页面的载入!
代码高亮效果演示
&pre&&code&
class BigBang {
function blah() {
echo "Hello ooso.net";
&/code&&/pre&
class BigBang {
function blah() {
echo "Hello ooso.net";
测试objective-c的code prettify效果
TTImageView *thumb = [[[TTImageView alloc] initWithFrame:CGRectMake(30, 30, 0, 0)] autorelease];
[thumb setAutoresizesToImage:YES];
[thumb setURL:@"http://farm4./722_7a906f9d8b_m.jpg"];
[self.view addSubview:thumb];
code-prettify下载
暂时把代码托管到,所以你可以直接使用git下载代码,或者直接从github下载现成的zip包。
代码非常简单,如果你有合适修正,可以试着用github推给我。
另外安装了一个全新的wordpress测试,发现一些bug,因为wordpress默认对文本进行格式修正,在代码后面添加了很多br以及p标签,导致插件失效,所以我不得已用php替换了一些内容保证插件的正常运行。
发表于December 2, 2010 at 8:51 pm
: 可以任意转载, 转载时请务必以超链接形式标明文章和及此声明
分类

我要回帖

更多关于 wp super cache 的文章

 

随机推荐