我有一个本地域名**.dz**,不允许DNS更改,我想将域名和所有页面重定向到另一个域名**.com**,并在地址栏中保留.dz地址,完全隐藏.com域名。我已经搜索了整个互联网所有的解决方案不这样做,有些做重定向到.com和.com显示在地址栏和其他一些重定向只有主页。我想知道是否是一个PHP函数直接从.com域读取,然后将内容写入.dz域我可以访问.htaccess或PHP文件。
ni65a41a1#
我假设您可以访问httpd.conf或conf目录,在httpd.conf中,在提到mod_proxy的部分尝试一下。
httpd.conf
conf
ProxyPass / http://yourwebsite.com/ smax=0 ttl=60 retry=5 ProxyPassReverse / http://yourwebsite.com/ smax=0 ttl=60 retry=5
如果你必须把上面的规则放在单独的conf文件中,名为httpd-ajp.conf,你可以在conf/extra目录中找到它。完成后,您必须在尝试检查之前重新启动服务器。
httpd-ajp.conf
conf/extra
编辑
正如你所说,你没有访问conf目录,你可以尝试在.htaccess下面的规则
.htaccess
RewriteEngine On RewriteRule ^(.*)$ http://example.org/$1 [P]
但是你必须确保mod_proxy被启用,这些行必须在httpd.conf中取消注解,希望你能够向你的托管服务提供商询问。
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so
ycl3bljg2#
在.htaccess中尝试代理:
RewriteEngine on RewriteRule ^ http://domain.com%{REQUEST_URI} [NE,P]
这是可能的,这是足够好的,在您的情况下,如果该网站是简单的。
tjjdgumg3#
事实上,Web应用程序应该托管在**.dz域中,并且您应该将.com永久重定向到dz.,无论您做什么,除了在dz域中更改DNS之外,它将是对.com的请求,而不是它本身(dz域名)。我的意思是没有办法,除非你想Map所有的网址,并使 curl 到.com为每个请求,并改变DOM文件和打印它。或使用Iframe这意味着你应该保持.com**域也。
vwkv1x7d4#
有一个方法,只要他们是分开托管,但是,您的.com将需要生活和工作。这与最初的Facebook应用程序系统相同,任何发送到其URL的内容,然后读取并呈现输出。无论是GET,POST还是Headers基本上,它是一个PHP脚本代理,不会更改或添加任何内容到它所访问的服务的输出中
<?php $protocol = "http"; $domain = "domain.com"; $ch = curl_init(); $requestPath = $_SERVER['REQUEST_URI']; $queryString = http_build_query($_GET); curl_setopt($ch,CURLOPT_URL, $protocol.'://'.$domain.$requestPath); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt($ch, CURLOPT_HEADER, 1); $mode = $_SERVER['REQUEST_METHOD']; $headers = getallheaders(); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); if ($mode == 'POST'){ curl_setopt($ch,CURLOPT_POST, count(http_build_query($_POST))); curl_setopt($ch,CURLOPT_POSTFIELDS, http_build_query($_POST)); } $response = curl_exec($ch); $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE); $header = substr($response, 0, $header_size); $body = substr($response, $header_size); $headers = explode("\r\n", $header); unset($headers[0]); echo "<pre>"; foreach($headers as $val){ if(strpos($val, "Transfer-Encoding") === false){ header("$val"); flush(); } } echo "</pre>"; //close connection curl_close($ch); echo $body; ?>
重写文件
RewriteEngine On RewriteRule .* index.php [L]
如果你在你的.dz域上托管这个,它将指向你的.com而不改变域名。
chhkpiq45#
你提到- '的.dz太慢,不允许DNS更改,这就是为什么我保留了一个.com和我'想重定向“慢主机”.dz到“快速主机“. com '..当.dz域名太慢时,不值得将时间投入到整个网络流量的重定向上。这会使事情变得更慢。你可以把一个重定向的html(如元刷新)在您的慢主机.dz域和服务的用户直接从.com域。有没有办法,你将受益于保持'慢主机' .dz域作为您的主要网站...
h5qlskok6#
要显示来自DomainB的内容,但显示DomainA URL,有2个选项:
1.园区域名
如果DomainB是您的primary domain name,只需将DomainA添加为Parked Domain。
2.使用.htaccess文件重定向
这种方法是:重定向并保留URL后的所有内容第一个选项将在一个URL上显示与另一个URL相同的所有内容。要做到这一点,您需要修改您的.htaccess文件,以便您的用户将转到域,并插入以下代码行:
RewriteCond %{HTTP_HOST} ^DomainA.com RewriteRule ^(.*) http://DomainB.com/$1 [P]
如果您使用的是file manager in cPanel,请确保您有选择显示隐藏文件的选项。
sbdsn5lh7#
@Séddik,请在.htaccess文件中尝试这样做
RewriteCond %{HTTP_HOST} ^www.your-local-domain.dz RewriteRule ^(.*) http://www.your-another-domain.com/$1 [P]
这可能会帮助你!
5w9g7ksd8#
此代码将帮助您重定向并保留URL之后的所有内容。
RewriteCond %{HTTP_HOST} ^domainname.com RewriteRule ^(.*) http://domainname.com/$1 [P]
8条答案
按热度按时间ni65a41a1#
我假设您可以访问
httpd.conf
或conf
目录,在
httpd.conf
中,在提到mod_proxy的部分尝试一下。如果你必须把上面的规则放在单独的conf文件中,名为
httpd-ajp.conf
,你可以在conf/extra
目录中找到它。完成后,您必须在尝试检查之前重新启动服务器。
编辑
正如你所说,你没有访问
conf
目录,你可以尝试在.htaccess
下面的规则但是你必须确保mod_proxy被启用,这些行必须在
httpd.conf
中取消注解,希望你能够向你的托管服务提供商询问。ycl3bljg2#
在
.htaccess
中尝试代理:这是可能的,这是足够好的,在您的情况下,如果该网站是简单的。
tjjdgumg3#
事实上,Web应用程序应该托管在**.dz域中,并且您应该将.com永久重定向到dz.,无论您做什么,除了在dz域中更改DNS之外,它将是对.com的请求,而不是它本身(dz域名)。
我的意思是没有办法,除非你想Map所有的网址,并使 curl 到.com为每个请求,并改变DOM文件和打印它。或使用Iframe这意味着你应该保持.com**域也。
vwkv1x7d4#
有一个方法,只要他们是分开托管,但是,您的.com将需要生活和工作。
这与最初的Facebook应用程序系统相同,任何发送到其URL的内容,然后读取并呈现输出。无论是GET,POST还是Headers
基本上,它是一个PHP脚本代理,不会更改或添加任何内容到它所访问的服务的输出中
重写文件
如果你在你的.dz域上托管这个,它将指向你的.com而不改变域名。
chhkpiq45#
你提到- '的.dz太慢,不允许DNS更改,这就是为什么我保留了一个.com和我'想重定向“慢主机”.dz到“快速主机“. com '..
当.dz域名太慢时,不值得将时间投入到整个网络流量的重定向上。这会使事情变得更慢。
你可以把一个重定向的html(如元刷新)在您的慢主机.dz域和服务的用户直接从.com域。有没有办法,你将受益于保持'慢主机' .dz域作为您的主要网站...
h5qlskok6#
要显示来自DomainB的内容,但显示DomainA URL,有2个选项:
1.园区域名
如果DomainB是您的primary domain name,只需将DomainA添加为Parked Domain。
2.使用.htaccess文件重定向
这种方法是:重定向并保留URL后的所有内容
第一个选项将在一个URL上显示与另一个URL相同的所有内容。要做到这一点,您需要修改您的.htaccess文件,以便您的用户将转到域,并插入以下代码行:
如果您使用的是file manager in cPanel,请确保您有选择显示隐藏文件的选项。
sbdsn5lh7#
@Séddik,请在.htaccess文件中尝试这样做
这可能会帮助你!
5w9g7ksd8#
此代码将帮助您重定向并保留URL之后的所有内容。