如何修改WordPress的.htaccess规则以定位主题目录下的asset.php?
修正.htaccess重写规则以指向正确路径的asset.php文件
我懂你现在的困境——你的RewriteRule里直接引用了asset.php,但这个文件根本不在public_html根目录下,而是藏在wp-content/themes/theme1/路径里,Apache找不到目标文件,规则当然没法生效啦。
只需要把规则里的asset.php替换成它相对于.htaccess所在位置(也就是public_html根目录)的完整路径就行,另外推荐加上L标记优化规则执行逻辑:
RewriteEngine On RewriteRule ^asset/(.*)$ wp-content/themes/theme1/asset.php?code=$1 [NC,L]
补充说明:
NC标记保留,它让规则忽略URL的大小写,用户不管输入Asset/XXX还是asset/xxx都能匹配;- 新增的
L标记告诉Apache,一旦这条规则匹配成功,就停止处理后续的重写规则,避免不必要的性能损耗; - 如果你用的是区分大小写的服务器(比如Linux系统),要确保路径里的文件夹和文件名大小写和实际完全一致,避免路径匹配失败;
- 还要确认你的服务器配置里允许.htaccess生效,也就是对应站点的虚拟主机配置里设置了
AllowOverride All(不然.htaccess里的规则根本不会被读取)。
内容的提问来源于stack exchange,提问作者Paddimonster
相关产品推荐
相关产品推荐

