如何使用.htaccess从网址隐藏查询字符串?
问题描述:
这里是链接编辑表单:如何使用.htaccess从网址隐藏查询字符串?
<a class="btn btn-success btn-xs" href="<?php echo SITE_URL."update?z=$zone_id" ?>" >Edit</a>
现在update.php页面的URL是像波纹管:
http://localhost/aponit/dev/update?z=55
现在我想URL应该喜欢就好波纹管:
http://localhost/aponit/dev/update/55
我该如何使用.htaccess来做到这一点?
注:使用当前的.htaccess规则,我从URL中隐藏刚刚.php
扩展
我目前的.htaccess文件
ErrorDocument 404 /not-found.php
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
RewriteRule ^aponit/dev/update/([0-9]+) aponit/dev/update.php?z=$1 [L]
答
试试这个: 更改链接:
<a href="http://localhost/aponit/dev/update/<?php echo $zone_id ?>" >Edit</a>
更新您的.htaccess
与代码:
RewriteEngine on
RewriteRule ^aponit/dev/update/([0-9]+) aponit/dev/update.php?z=$1 [L]
希望有助于您:)
更新的.htaccess:
ErrorDocument 404 /not-found.php
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
RewriteRule ^aponit/dev/update/([0-9]+) aponit/dev/update.php?z=$1 [L]
答
尝试在你的.htaccess
使用这个法则。在这之前,请确保您的浏览器缓存已被清除,并且规则位于您的.htaccess
的顶部。
RewriteEngine On
RewriteRule ^aponit/dev/update/([^/]*)$ /aponit/dev/update?z=$1 [L]
那么我应该改变链接像这样︰update/$ zone_id? –
你的意思是这样的网址:http:// localhost/update/$ zone_id。 –
不,url应该是:http:// localhost/aponit/dev/update/55,所以我应该改变我现有的编辑链接代码从" >Edit到" >Edit –