确定浏览器地址栏中的URL(不是真实地址)

时间:2013-11-13 16:11:47

标签: javascript php

我有两个网址 - biothoughtblog.co和playfight.co。第一种是转发到第二种,使用掩蔽。我正在使用这个

<?php
function curPageURL() {
 $pageURL = 'http';
 if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
 $pageURL .= "://";
 if ($_SERVER["SERVER_PORT"] != "80") {
  $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
 } else {
  $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
 }
 return $pageURL;
}
?>

<?php
  echo curPageURL();
?>
页面http://www.biothoughtblog.co/test.php上的

- 然而,它回显了http://www.playfight.co/test.php的真实网址。我需要它来回显地址栏中的URL。我知道非常少的Javascript - 这是我需要在这里使用的吗?

非常感谢。

P.S哦,目的是在两个不同的域名和不同的品牌(徽标等)下运行相同的网站。

2 个答案:

答案 0 :(得分:3)

那是因为http://www.biothoughtblog.co/test.php 框架 http://www.playfight.co/test.php

<frame src="http://www.playfight.co/test.php" frameborder="0" />

PHP无法知道它是否在框架集中加载,以及如何获取父框架的URL。

您希望避免使用注册商或DNS提供商的“屏蔽”功能。将biothoughtblog.co域指向同一主机服务器,确保为两个域设置了主机帐户。然后biothoughtblog.co将直接访问您的网站,PHP将知道它是什么。

答案 1 :(得分:0)

您无需在PHP中执行任何操作即可在两个不同的域下运行相同的网站。

如果您使用的是apache,请打开您的conf文件,找到您的虚拟主机配置并添加serverAlias。

示例:

<VirtualHost *:80>
    DocumentRoot "/var/www/html"
    ServerName biothoughtblog.co
    ServerAlias playfight.co
    <Directory "/var/www/html">
        AllowOverride All
    </Directory>
</VirtualHost>