Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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
.htaccess重写url_.htaccess_Mod Rewrite_Rewrite - Fatal编程技术网

.htaccess重写url

.htaccess重写url,.htaccess,mod-rewrite,rewrite,.htaccess,Mod Rewrite,Rewrite,我不知道我的.htaccess是否正常工作,因为它在找不到文件时显示错误文档404 我正在尝试重新编写url,以便domain.com/products/123将成为domain.com?product.php?productid=123 这是我的.htaccess,它没有起作用。当我在浏览器中写入domain.com/products/123时,我得到了错误文档404 RewriteEngine on RewriteRule ^/products/([0-9]+)/$ product.php?

我不知道我的.htaccess是否正常工作,因为它在找不到文件时显示错误文档404

我正在尝试重新编写url,以便domain.com/products/123将成为domain.com?product.php?productid=123

这是我的.htaccess,它没有起作用。当我在浏览器中写入domain.com/products/123时,我得到了错误文档404

RewriteEngine on
RewriteRule ^/products/([0-9]+)/$ product.php?productid=$1

ErrorDocument 404 /page404.php

我做错了什么?

mhh我认为是/之前的产品。。。如果删除了它,请尝试它是否工作。

一段时间后发现问题

这就是被窃听的代码: 重写规则^/products/([0-9]+)/$product.php?productid=$1

Abadon关于/之前的产品是正确的,但也应该有?美元之前。因此,此代码将像它应该的那样工作:

RewriteRule ^products/([0-9]+)/?$ product.php?productid=$1

product.php是否在根文件夹中?很抱歉,忘了对此发表评论。是的product.php位于根目录中。请尝试删除/before products/它仍然不起作用。奇怪的是,无论是否使用/before products,当我使用$\u SERVER['REQUEST\u URI']时,我都会在错误404页面上获得“/products/123”,祝贺修复!当您能够回答时,请确保将您的答案标记为“已接受”,以便其他人看到您的问题已得到回答,并能够从您的解决方案中学习。干杯~