gpt4 book ai didi

php - .htaccess 中的重写规则 : what does it do

转载 作者:行者123 更新时间:2023-12-02 01:21:31 25 4
gpt4 key购买 nike

.htaccess 中的这一行有什么作用,什么时候需要它?

RewriteRule !.(js|css|ico|gif|jpg|png)$ index.php

我正在使用 zend,我注意到 zend 生成的 .htaccess 没有这条规则,但我看过一个教程,其中有它但没有解释原因。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

最佳答案

这是一个RewriteRule,将除这些文件类型(js、CSS、图标、GIF/JPG/PNG 图形)的请求之外的每个请求重定向到 index.php .

这样,对静态资源的请求就不会由index.php 处理(这通常是一件好事,因为启动 PHP 实例的成本很高。)

但是它已经在下面的代码块中处理了。这部分:

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]

排除对实际存在的文件的 index.php 的重定向 (-s);符号链接(symbolic link)(-);和现有目录 (-d)。

如果您使用引用的第二个 block (由 Zend 创建的 block ),一切都很好。

Reference in the Apache manual

关于php - .htaccess 中的重写规则 : what does it do,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3739312/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com