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 .htaccess重写规则_Apache_.htaccess - Fatal编程技术网

Apache .htaccess重写规则

Apache .htaccess重写规则,apache,.htaccess,Apache,.htaccess,大家晚上好 我在使用.htaccess文件时遇到了一些问题,我希望你们中的一些人能够帮助我。我们正在重写的第一条语句(它重写了我的网站,以便删除index.php)——语句一——功能完美,因此没有问题,但是当我尝试从清单中删除?ID=名称时,它似乎不想工作。由于某种原因不能起作用的语句附在语句2中 声明一 RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAM

大家晚上好

我在使用.htaccess文件时遇到了一些问题,我希望你们中的一些人能够帮助我。我们正在重写的第一条语句(它重写了我的网站,以便删除index.php)——语句一——功能完美,因此没有问题,但是当我尝试从清单中删除?ID=名称时,它似乎不想工作。由于某种原因不能起作用的语句附在语句2中

声明一

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !(index\.php)
RewriteRule .* index.php [L]
声明二

RewriteEngine on
RewriteRule ^listing/(.*) listing?ID=$1 [PT]
任何人能够提供的任何帮助都将不胜感激


Matthew

您不需要再次打开重写引擎。

我不确定是否正确理解您的意思,但从您的文本中,我推断您希望将清单?ID=123转换为清单/123,对吗

在这种情况下,您需要相反的重写规则。这应该起作用:

Options +FollowSymlinks
RewriteEngine On
RewriteCond %{QUERY_STRING} ID=(.+)
RewriteRule ^listing(.*) /listing/%1 [QSA]

不,您需要打开它,因为报表1中有一个
[L]
。感谢您的快速回复。删除“RewriteEngine on”后,页面仍无法呈现。还有其他想法吗?@enchance oops没有看到!你能给出一个关于语句2应该如何工作的示例URL吗?