这是WordPress中的.htaccess代码。有人可以解释它是如何工作的吗?

2022-08-30 11:12:03

这是WordPress中永久链接的.htaccess代码。我不明白这是怎么回事。有人可以解释吗?

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

我用谷歌搜索并发现,部分手段是给予真正的目录和文件更高的优先级。-f-d

但是,什么是 和 ?^index\.php$ - [L]RewriteRule . /index.php [L]

WordPress如何用这个来处理类别,标签,页面等?

它是否发生在内部?如果是这样,我有兴趣学习如何在PHP中做到这一点。

谢谢


答案 1

^index\.php$ - [L]防止重写请求,以避免不必要的文件系统检查。如果请求是针对指令的,则不执行任何操作并停止处理规则。index.phpindex.php-[L]

此块都是一个规则,它说如果它不是真实文件而不是真实目录,请将请求重新路由到 。index.php

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

index.php本身解释客户端请求的URL(PHP可以使用)并调用正确的代码来呈现用户请求的页面。$_SERVER['REQUEST_URI']


答案 2

推荐