根据URL重定向到某个页面

时间:2014-12-30 01:24:32

标签: php apache .htaccess mod-rewrite webserver

目前,我已使用以下方式使用Apache设置我的网站:

...  
ServerName example-one.com  
ServerAlias example-two.com  
ServerAlias example-three.com  
...

这样他们都指向同一个目录并打开相同的index.php文件 我想要实现的是为以下内容提供不同的登录页面,但要共享其余内容。

我现在的问题是,是否可以附加一些GET参数,例如index.php?URL = 1等。
或者有更好的方法来实现这一目标吗?也许使用mod_rewrite?

你会做什么?

1 个答案:

答案 0 :(得分:0)

您可以做的只是加载相同的模板,并根据加载的URL修改您想要修改的内容。它在伪PHP代码中是这样的:

$site = $_SERVER['SERVER_NAME'];

switch ($site) {
    case 'example-one.com' : {
        loadTemplate('page.html', ['site' => 1]);
    }
    case 'example-two.com' : {
        loadTemplate('page.html', ['site' => 2]);
    }
    case 'example-three.com' : {
        loadTemplate('page.html', ['site' => 3]);
    }
}
<html>
    <head>
        [...]
    </head>
    <body>
        <p>
        <?php
            switch (site) {
                case 1: {
                    echo "hello";
                    break;
                }
                case 2: {
                    echo "goodbye";
                    break;
                }
                case 3: {
                    echo "later";
                    break;
                }
            }
        ?>
        </p>
    </body>
</html>