提问人:father father 提问时间:4/29/2023 最后编辑:father father 更新时间:5/5/2023 访问量:73
是否可以在HTACCESS文件中创建或调用变量
is it possible to create or call a variable in htaccess file
问:
我之所以问这个问题,是因为......在我想使用的文件中,将我的更改为一些随机字符串,即如果我从浏览器请求,我希望 URL 在浏览器中显示如下: .我想是动态的,随机变化。PS 我根本不想出现在 URL 中,只想出现在随机生成的字符串中。.htaccess
RewriteRule
index.php
www.example.com/index.php
www.example.com/abcdefghij1234
abcdefghij1234
index.php
这是我在文件中设置的规则,它不起作用。请帮帮我.htaccess
RewriteEngine On
RewriteBase /
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^generate_random_string$ - [E=RANDOM_STRING:%{TIME}%{REMOTE_ADDR}]
RewriteRule ^generate_random_string$ - [L]
RewriteRule ^%{ENV:RANDOM_STRING}$ index.php [L]
RewriteCond %{THE_REQUEST} ^GET\ /index\.php [NC]
RewriteRule ^index\.php$ /%{ENV:RANDOM_STRING} [L,R=301]
感谢您的支持。
感谢您的回复。很抱歉这么晚才回复,我被学校项目和其他任务抓住了。回到我的问题。
实际上,我正在玩 PHP,我编写了以下代码并将其上传到我的 cpanel。
$domain = $_SERVER['HTTP_HOST'];
$path = "/index.php";
$destina_url = "https://{$domain}{$path}";
header("Location: $destina_url");
exit();
我将上述代码保存为公共文件夹中的代码.php。我被重定向到 www.mydomain.com/index.php。此外,我继续在 htaccess 中使用以下代码重写 url
RewriteEngine On
RewriteBase /
RewriteRule ^abcdefghijke12345$ index.php [L]
RewriteCond %{THE_REQUEST} ^GET\ /index\.php [NC]
RewriteRule ^index\.php$ abcdefghijke12345 [L,R=301]
因此,当我在浏览器中启动完整的 url 即 (www.mydomain.com/code.php) 时,我被重定向到 (www.mydomain.com/abcdefghijke12345),这是所需的结果。
但是,我手动将 abcdefghijke12345 输入到 .htaccess 中,这对我来说是静态的,我想要的是 abcdefghijke12345 来自动生成随机字符串。
因此,我在代码.php中添加了以下代码:
$domain = $_SERVER['HTTP_HOST'];
$path = bin2hex(random_bytes(128));
$destina_url = "https://{$subdomain}.{$domain}/{$path}";
header("Location: $destina_url");
exit();
使用此代码,当我在浏览器中再次启动(www.mydomain.com/code.php)时,我从浏览器收到错误 403。所以,我很好奇是否可以在我的代码 .php 中创建一个服务器变量并在 .htacess 中引用它,如果我问得对,我不知道。请原谅我的英语。
谢谢。
答: 暂无答案
评论
RewriteMap
index.php