WordPress的默认.htaccess文件?


Answers:


24

这是该文件的默认代码。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

您可以在此处检查默认的htaccess文件。

http://codex.wordpress.org/Using_Permalinks

谢谢。希望对您没有帮助。


请在这里查看有关此内容的聊天。

6

WordPress不包含.htaccess文件格式。

规则按save_mod_rewrite_rules()功能写入文件,并由生成$wp_rewrite->mod_rewrite_rules()

请注意,多站点安装具有不同(更复杂)的规则,并且处理方式似乎有所不同。


+1为正确的方向。请检查我的回答是否正确理解了这个问题。我认为核心是使用Rewrite_WP API,而不是使用个人的.htaccess文件重新发明轮子。


0

使用Freenode的#wordpress通常在中找到合适的文档/topic。我在Class WP_Rewrite 这里找到了关键,官方的wordpress.org处于最佳的误导和市场营销状态。无论如何,请勿将Apache的重写规则与WP的重写规则混合使用,尽管WP的命名可能来自Apache的等效名称。

WP_Rewrite API状态

您可以使用此组件添加规则以触发页面查看和处理。前端控制器的全部功能不存在,这意味着您无法根据重写规则定义模板文件的加载方式。

因此,您必须使用API​​进行更改,但不能完全确定其含义,但我认为这意味着您不能相信自己的硬编码.htaccess -files-即使使用不同的WD -versions,情况也可能发生变化!因此,请使用API​​。

截取

如果.htaccess -file存在,则此处的代码具有某些条件-不是100%的推论,因为没有充分记录,并且无法理解此处的命名,但主要的信息可能是维护重写规则的安全方法是使用WP_Rewrite API,将来可能会更改WP。

例如,简单的Apache重写RewriteRule ^hello$ Layouts/hello.html [NC,L]显然类似于add_rewrite("^hello$", "Layouts/hello.html"),尚未经过测试,但尝试遵循以下API:

add_rewrite_rule (line 19)
Add a straight rewrite rule.

see: WP_Rewrite::add_rule() for long description.
since: 2.1.0
void add_rewrite_rule (string $regex, string $redirect, [string $after = 'bottom'])
string $regex: Regular Expression to match request against.
string $redirect: Page to redirect to.
string $after: Optional, default is 'bottom'. Where to add rule, can also be 'top'.

有关

  1. http://codex.wordpress.org/Rewrite_API/add_rewrite_rule

  2. http://pmg.co/a-mostly-complete-guide-to-the-wordpress-rewrite-api

  3. 多亏了toscho在这里提供了帮助,在聊天中做了一些闲聊。


我敢肯定,我在这里误解了一些东西,请在这里查看此聊天。是否因为我的博客位于root级而被拦截,例如www.hello.com/blog/?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.