使用 Htaccess 将 php $_GET 项目添加到虚拟子域

标签 php mysql .htaccess subdomain echo

我有一个与 phphtaccess 相关的简单问题。

想想我有这个 php 代码:

if(isset($_GET['word'])) {
echo $_GET['word'];
}

所以我会有这个(例如):

example.com/?word=test

回显出 **test** 的代码,所以我的问题是,

如何将 $_GET 值更改为虚拟子域

例如,如果打开以下地址,我想要这个:

test.example.com

然后代码运行并回显 **test**

我需要一个 htaccess 代码来做这件事,那么,我该如何使用 htaccess 来做呢?

我已经尝试了一些代码,但我无法得到结果。

最佳答案

您可以在您的 DOCUMENT_ROOT/.htaccess 文件中使用此代码:

RewriteEngine On

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^([^.]+) [NC]
RewriteCond %{QUERY_STRING} !(?:^|&)word=[^&]+(?:&|$) [NC]
RewriteRule ^ %{REQUEST_URI}?word=%1 [QSA,L]

%1 是对该行中捕获的值的反向引用:RewriteCond %{HTTP_HOST} ^([^.]+) [NC] 这是第一部分DOT 前的域名。

关于使用 Htaccess 将 php $_GET 项目添加到虚拟子域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26191072/

相关文章:

apache - 如果文件存在于子文件夹中,则 .htaccess 重定向

php - Foreach 循环返回查询两次

php - 如何在php中用值填充多维数组

php - CakePHP 发生错误时发送电子邮件

PHPUnit 配置 (phpunit.xml)——在 Bootstrap 中加载?

MySQL计算多个用户之间的共同 friend

php - 从数据库获取描述时模式不匹配

mysql - 2亿条以上记录速度的LOAD INFILE

apache - 从 htpasswd 中排除文件夹

.htaccess - 防止抓取工具(尤其是 Google)抓取我域中的某个文件夹?