Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 两个Consequitive重写规则在htaccess中不起作用_Apache_.htaccess_Mod Rewrite_Url Rewriting - Fatal编程技术网

Apache 两个Consequitive重写规则在htaccess中不起作用

Apache 两个Consequitive重写规则在htaccess中不起作用,apache,.htaccess,mod-rewrite,url-rewriting,Apache,.htaccess,Mod Rewrite,Url Rewriting,这是我的.htaccess文件 RewriteCond %{REQUEST_FILENAME} !-f <FilesMatch “.(ttf|otf|eot|woff)$”> <IfModule mod_headers.c> Header set Access-Control-Allow-Origin “domain.com” </IfModule> </FilesMatch> Options +FollowSymLinks -MultiViews

这是我的
.htaccess
文件

RewriteCond %{REQUEST_FILENAME} !-f
<FilesMatch “.(ttf|otf|eot|woff)$”>
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin “domain.com”
</IfModule>
</FilesMatch>
Options +FollowSymLinks -MultiViews

RewriteEngine On
RewriteRule   ^[A-Za-z-]+/([A-Za-z0-9-]+)/?$  viewpost.php?id=$1   [QSA,NC,L]
RewriteRule   ^[A-Za-z-]+/([A-Za-z0-9-]+)/?$  category.php?id=$1   [QSA,NC,L]
RewriteCond%{REQUEST\u FILENAME}-F
标题集访问控制允许源“domain.com”
选项+以下符号链接-多视图
重新启动发动机
重写规则^[A-Za-z-]+/([A-Za-z0-9-]+)/?$viewpost.php?id=$1[QSA,NC,L]
重写规则^[A-Za-z-]+/([A-Za-z0-9-]+)/?$category.php?id=$1[QSA,NC,L]

除了第一个重写规则有效而第二个无效之外。

这是因为您在第一个
重写规则的末尾使用了标志[L]

[L]标志导致mod_rewrite停止处理规则集。在里面 在大多数上下文中,这意味着如果规则匹配,就没有其他规则 将被处理。这对应于Perl中的最后一个命令,或者 C中的break命令。使用此标志指示当前 应立即应用该规则,而不考虑进一步的规则


关于的文档。

这是因为您在第一个
重写规则的末尾使用了标志[L]

[L]标志导致mod_rewrite停止处理规则集。在里面 在大多数上下文中,这意味着如果规则匹配,就没有其他规则 将被处理。这对应于Perl中的最后一个命令,或者 C中的break命令。使用此标志指示当前 应立即应用该规则,而不考虑进一步的规则


关于的文档。

我不知道我缺少了什么。我不知道我缺少了什么。即使删除了L,第二部分也不会得到处理。现在该怎么办?即使在移除L后,第二部分也不会得到处理。现在该怎么办??