我有一个特殊的设置,我纯粹通过静态 XML 文件(我的博客上的内容)提供内容。每次在
中发布新博客文章时,插件都会创建静态 XML/wp-content/folder/my.xml
太棒了。现在,我将通常通过 RSS 提要 URL 访问的用户通过 .htaccess 重定向到此静态文件:# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
# Rewrite feed/ to Static Feed:
RewriteRule ^feed/?$ /wp-content/folder/my.xml [L,T=application/rss+xml]
</IfModule>
# END WordPress
这一切看起来都很好 - 但是看看 MySQL,由于我的服务器所获得的用户数量,它的负载确实很重。这很奇怪,因为理论上它所做的只是向它们提供静态 XML。查看 phpmyadmin 中的进程,我看到很多:
SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND wp_posts.post_type = 'post' AND ...
这表明了对/feed/的每个请求?正在使 MySQL 事件...为什么??
有什么想法吗?
最佳答案
我相信您在正则表达式的开头缺少一个/,或者在其上方缺少一个 RewriteBase/
声明。
尝试像这样更改重写规则:
RewriteBase /
RewriteRule ^(feed/?)?$ /wp-content/folder/my.xml [L,T=application/rss+xml]
关于php - WordPress 大量 MySQL 事件,没有博客访问权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6284796/