【发布时间】:2021-08-20 04:29:39
【问题描述】:
我的目标是操纵 URL 栏,这样对用户来说会更简单。
我正在使用 htaccess 并想操作一个 URL
当前网址为:localhost/test/htdocs/invite?code=AB2A
我希望网址是:localhost/test/htdocs/invite/ABAC
我如何使用 htaccess 来完成这个?我希望用户能够输入 localhost/test/htdocs/invite/ABAC 并让它与我的代码一起使用,因为目前他们必须编写 localhost/test/htdocs/invite?code=AB2A
我目前正在使用此代码:
RewriteCond %{QUERY_STRING} (^|&)code=([^.?]+)($|&)
RewriteRule ^test/htdocs/invite\.php$ /test/htdocs/invite/([^.?]+)? [L,R=301]
但是,它显示 404 Not Found
【问题讨论】:
-
我的网址是localhost/test/htdocs/invite?code=1
RewriteEngine on RewriteRule ^invite/([a-zA-Z0-9]+)$ /invite?code=$1 [L,QSA]但这不起作用 -
请确保您的 RewriteEngine 已由 Apache 启用。要检查这一点,只需在
.htaccess文件中插入一个随机字符串(现在保存文件),重新加载页面后您必须看到一个错误。如果没有错误,则意味着您的 RewriteEngine 已禁用,这就是 .htaccess 无法正常工作的原因 -
我的重写引擎工作正常。我只是不知道这个确切的代码是否正确?因为它对 URL 没有影响。另外,在 htacces 的底部,我正在删除 .php 但这不应该影响这个?
-
您当前的 URL 是 :
invite?code=AB2A但为什么 ABAC 在修改后的 URL 中?