str*_*ade 7 .htaccess rewrite http rule
我正在安装phpancake,有一个像这样的文件夹
application/
install/
library/
public/
sql_schema/
install.html
install.php
Run Code Online (Sandbox Code Playgroud)
这条规则意味着什么?
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /vote/public/index.php [NC,L]
Run Code Online (Sandbox Code Playgroud)
Tat*_*nen 11
重写有两个部分.第一个指定如果请求的文件名是大小大于0(-s)的符号链接(-l)或目录(-d)的常规文件,则重写为无处,例如.不采取行动.[NC,L]表示该规则不区分大小写,以及这些条件匹配的最后一条规则.
所有其他请求都转发给/vote/public/index.php.
此重写的目的是可以从服务器获取实际的现有文件而不会产生干扰.如果没有第一条规则,每个文件请求(css和js文件,图像等)都会变得index.php非常糟糕.
通常这是用一个声明写的.你可以否定条件,然后[OR]也可以取出statemens:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ /vote/public/index.php [NC,L]
Run Code Online (Sandbox Code Playgroud)
这相当于原始陈述.
| 归档时间: |
|
| 查看次数: |
11289 次 |
| 最近记录: |