Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.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
Php htaccess第二次重写规则不起作用_Php_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Php htaccess第二次重写规则不起作用

Php htaccess第二次重写规则不起作用,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我创建了一个网站,并将此代码放在.htaccess文件中 RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-l RewriteRule (.*)$ profile.php?id=$1 [QSA,L] RewriteRule (.*)$ category.php?id=$1 [QSA,L] 现在

我创建了一个网站,并将此代码放在
.htaccess
文件中

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule  (.*)$ profile.php?id=$1 [QSA,L]
RewriteRule  (.*)$ category.php?id=$1 [QSA,L]
现在,第一个重写规则按预期工作,允许我使用类似
site.com/profile
的URL,而不是
site.com/profile.php?id=foo..
但是,当我添加第二个规则时,为了获得与上述解决方案相同的结果,页面出现故障,css没有被包括在内。所以,这两者似乎不能写在一起,我不知道解决办法是什么

尝试更改为:

RewriteRule  ^profile/(.*)$ profile.php?id=$1 [QSA,L]
RewriteRule  ^category/(.*)$ category.php?id=$1 [QSA,L]

如果在两行上都从[QSA,L]中删除“L”是否有效?只是添加了几个斜杠,试试看。仍然不起作用,但我正在尝试解决这个问题。我根本不知道这是什么。你能给我链接一个好的初学者教程吗?刚找到这个,有帮助吗?啊,我看到了。很好的教程,但我正在寻找更简单的:)。安威,谢谢。这对我很有效。问题的关键是(.*)表示“一切”,而[QSA,L]中的“L”表示“如果此规则为真,则停止处理”