首页 > 解决方案 > 缩短 htaccess 的 URL

问题描述

我正在编辑一个使我的 url 简短的代码,但是它有一个问题,它必须有两个变量才能在服务器中找到它?我创建的代码是这样的:

RewriteRule product/([^/\.]+)/([^/\.]+)/?$ product_info.php?ItemName=$1&uid=$2

结果:

http://Example.com.my/product/NBR/901003-7

如果要取出 uid,则 url 将变为错误并显示找不到该文件。是关于导致此问题的 htaccess 代码还是 php 代码。

我希望得到的网址是:http: //Example.com.my/product/NBR

标签: php.htaccess

解决方案


您可以在 .htacess 文件中设置 2 个不同的重写规则

  1. 如果 URL 中有 uid,则重写规则

    重写规则 product/([^/] )/([^/] )$ product_info.php?ItemName=$1&uid=$2

  2. 如果您的 URL 中没有 uid,则重写规则

    RewriteRule 产品/([^/])$ product_info.php?ItemName=$1

这是屏幕截图:

带 UID

在此处输入图像描述

没有 UID

在此处输入图像描述

.htacess 代码

在此处输入图像描述

希望对你有效。


推荐阅读