Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.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重写URL_Php_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Php 使用.htaccess重写URL

Php 使用.htaccess重写URL,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我对url重写一点也不熟悉,所以我可能有一个简单的问题要问一些了解这方面的人。 我有一个电子商务网站,目前项目的url看起来像这样 www.blizuecomm.net/www/item.php?id=399&item-NAME 我在分类页面上得到这样的URL,代码如下 <a href="item.php?id=<?=$values[$i]['gitemid']?>&amp;<?=cleanString($values[$i]['gname'])?> 最简

我对url重写一点也不熟悉,所以我可能有一个简单的问题要问一些了解这方面的人。 我有一个电子商务网站,目前项目的url看起来像这样 www.blizuecomm.net/www/item.php?id=399&item-NAME 我在分类页面上得到这样的URL,代码如下

<a href="item.php?id=<?=$values[$i]['gitemid']?>&amp;<?=cleanString($values[$i]['gname'])?>

最简单的方法可能是使其看起来像:
www.blizuecomm.net/www/id/ITEM-NAME
,因为否则您的
ITEM.php
脚本将无法获得id。这需要您将其添加到
www
文件夹中的htaccess文件

RewriteEngine On
RewriteBase /www/

RewriteCond %{THE_REQUEST} \ /www/item\.php\?id=([0-9]+)&([^&\ ]+)
RewriteRule ^ %1/%2? [L,R=301]

RewriteRule ^([0-9]+)/(.*)$ item.php?id=$1&$2 [L,QSA,NE]

www.blizuecomm.net/www/id/ITEM-NAME?id=id&ITEM-NAME我是缺少什么东西还是应该搜索代码中的错误?Thanks@sz_tech很抱歉,我在
%2
的末尾漏掉了一个问号,谢谢Jon像我问的那样工作,你知道我应该检查什么吗?现在URL重写成功后,我可以看到我的样式和图像在页面上不起作用。@sz_tech或者将样式/图像的链接设为绝对URL,或向页眉添加相对基数:
(或任何基数)
RewriteEngine On
RewriteBase /www/

RewriteCond %{THE_REQUEST} \ /www/item\.php\?id=([0-9]+)&([^&\ ]+)
RewriteRule ^ %1/%2? [L,R=301]

RewriteRule ^([0-9]+)/(.*)$ item.php?id=$1&$2 [L,QSA,NE]