首页 > 解决方案 > htaccess 将目录名称更改为参数

问题描述

我有一个用于重定向的域。

example.com/129dj9

它使用 6 位字母数字代码。我想更改example.com/129dj9example.com?code=129dj9以重定向到另一个网址。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com/([a-z0-9]{6})
RewriteRule ^(.*)$ https://example\.com?code={REQUEST_URI}

我想确保域是example.com并且目录/129dj9是 6 位字母数字代码。我的代码根本不起作用。

标签: .htaccessmod-rewrite

解决方案


这里不需要这么复杂RewriteCond,而是尝试这样的事情:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule ^/?([a-z0-9]{6})$ https://example.com?code=$1 [END]

注意:如果您有权访问该配置,最好将此类规则放在真实的 http 服务器主机配置中,而不是使用动态配置文件(“.htaccess”)。上述规则适用于这两种情况。


推荐阅读