【发布时间】:2023-03-10 23:31:01
【问题描述】:
我想要一些关于 URL 重写魔法的帮助。我无法修改 Request_URI 变量。
我想在http://host.com/alpha 和http://host.com/beta 两个站点之间切换。它们都由相同的 php 脚本处理。这个脚本是http://host.com/index.php。
index.php 期望得到一个 GET 变量SITE 来告诉它要显示哪个站点。它还使用 REQUEST_URI 来确定要显示的内容。为了使其工作,alpha 或 beta 需要从原始请求中删除。这就是我卡住的地方。
所以 REQUEST_URI 从 /alpha/content/file 开始,需要变成 /content/file。
我已经在 .htaccess 中使用 mod_rewrite 尝试过:
RewriteCond %{REQUEST_URI} /(alpha|beta)(.*)
RewriteRule .* index.php?site=%1
index.php:
<?php
echo "Site: " . $_GET['site'] . "<br/>";
echo "Request_URI: " . $_SERVER['REQUEST_URI'] . "<br/>";
//get_html($_SERVER['REQUEST_URI']);
?>
我希望使用 Apache 的 SetEnvIf 和 Alias 能有更好的运气。
任何关于如何做到这一点的想法将不胜感激。谢谢。
【问题讨论】:
标签: php apache mod-rewrite url-rewriting