.htaccess htaccess文件重写错误-^trip/(\d+;)*$。/trip.html?tripId=$1

.htaccess htaccess文件重写错误-^trip/(\d+;)*$。/trip.html?tripId=$1,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我不熟悉使用htaccess,我已经在项目文件夹中创建了一个.htaccess文件(如果有什么问题,我会在localhost上用xampp运行它) 我的文件中有以下内容: Options +FollowSymLinks RewriteEngine On RewriteCond %{SCRIPT_FILENAME} !-d RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^trip/(\d+)*$ ./trip.html?tripId=$1 我想

我不熟悉使用htaccess,我已经在项目文件夹中创建了一个.htaccess文件(如果有什么问题,我会在localhost上用xampp运行它)

我的文件中有以下内容:

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

RewriteRule ^trip/(\d+)*$ ./trip.html?tripId=$1
我想得到的是,我可以访问localhost:8000/trip/1,它将与localhost:8000/trip.html相同?tripId=1

但是我一直在得到“无法得到/绊倒/1”因为某种原因,我做错了什么

提前感谢,,
Gabi.

您的apache配置中是否有“AllowOverride All”?我的htaccess似乎根本不起作用,我尝试在文件开头添加垃圾以获取内部服务器错误,但仍然有效…然后您没有将其放在正确的位置。请将您的apache配置粘贴到问题中。更大的问题是,您正在向其添加查询字符串一个静态文件,然后将其隐藏。除非您将
html
扩展名设置为解析为服务器端语言,否则客户端脚本中永远不会存在名为
tripId
的变量。它只能从
位置获取编号。路径名
粘贴所有配置文件可能太多,但我有这个line:LoadModule rewrite\u module modules/mod\u rewrite.那么我认为这应该足够了不?如果我不理解你,你是什么意思?我在静态文件中添加一个查询字符串,然后隐藏它?为什么tripId变量永远不存在?否则你怎么把/trip.html/?tripId=1改为/trip/1?你的文件中有“AllowOverride All”吗apache配置?似乎我的htaccess根本不起作用,我尝试在文件开头添加垃圾以获取内部服务器错误,但仍然有效…然后您没有将其放在正确的位置。请将您的apache配置粘贴到问题中。更大的问题是,您正在向静态文件添加查询字符串,然后将其隐藏。除非您将
html
扩展名设置为解析为服务器端语言,命名的
tripId
变量将永远不存在于客户端脚本中。它将只能从
位置获取数字。路径名
粘贴所有配置文件可能太多,但我有一行:LoadModule rewrite\u module modules/mod\u rewrite。那么我认为这应该足够了不?沃尔夫我不明白你的意思,你是说我在静态文件中添加了一个查询字符串,然后隐藏了它?为什么tripId变量永远不存在?否则你会如何将/trip.html/?tripId=1更改为/trip/1?