htaccess RewriteRule导致“找不到对象!”

时间:2019-09-04 11:24:12

标签: .htaccess mod-rewrite url-rewriting

我的实际网址是<a href="<?php echo siteUrl;?>view.php?name=<?php echo $slug_url?>"><?php echo $heroheading ?></a>

输出

<a href="http://example.com/view.php?name=search-result">Click me</a>

我正在做的是,我必须重写URL。我想显示类似

的URL

http://example.com/admin/service/search-result

并且我添加了HTML <a href="<?php echo siteUrl;?>admin/service/<?php echo $slug_url?>"><?php echo $heroheading ?></a>

我尝试使用.htaccess中的以下代码,但收到“找不到对象!”

RewriteRule ^/?admin/service/([0-9\w]+)$ /view.php?name=$1

我在Google上进行了检查,并尝试了相同的代码,但是不知道为什么它不起作用。

你能帮我吗?

1 个答案:

答案 0 :(得分:1)

您已经关闭。只需将规则更改为此:

RewriteRule ^/?admin/service/([\w-]+)/?$ view.php?name=$1 [L,QSA,NC]

\w等效于[a-zA-Z0-9-],因此不需要单独0-9。另外,您将需要字符类中的-来匹配-中的search-result