htaccess 文件以在查询字符串中使用正斜杠而不是 ?、= 和 & 符号?

htaccess file to use forward slash instead of ?, = and & signs in query string?

我正在创建一个小型电子商务网站。我们有一个项目列表,用户可以单击该列表并浏览有关该项目的信息。我在查询字符串中传递了项目 ID 和一些其他信息,因此在下一页上我可以从数据库中获取相关数据。

现在我们有以下 URL 默认结构:

www.somedomain.com/item.php?id=1&some1=somevalue&some2=somevalue

但我想要 URL 这样的:

www.somedomain.com/item/1/somevalue/somevalue

其中 itemitem.php/1/somevalue/somevalue 是查询字符串 ?id=1&some1=somevalue&some2=somevalue。我想要我的整个网站查询字符串参数,如上所示。

我正在使用核心 PHP,没有框架。我用 .htaccess 文件做了一些,但服务器在加载网站时出错。如何使用 .htaccess 文件执行此操作?

尝试下面的方法,我使用 mod_rewrite 来实现结果,如果使用之前的任何尝试,请清除缓存。

下面还将涵盖“_”下划线,之后的下一条规则将仅适用于一项。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z\_]+)/([0-9]+)/([a-zA-Z]+)/([a-zA-Z]+)$ .php?id=&some1=&some2= [L]
RewriteRule ^([a-zA-Z\_]+)/([0-9]+)$ .php?item=[L]