Php 使用httpd将www.domain.com和domain.com重定向到subdomain.domain.com
我想重定向: 情景1Php 使用httpd将www.domain.com和domain.com重定向到subdomain.domain.com,php,apache,http,redirect,mod-rewrite,Php,Apache,Http,Redirect,Mod Rewrite,我想重定向: 情景1example.comtosubdomain.example.com <VirtualHost *:80> ServerName example.com ServerAlias www.example.com example.com Redirect permanent / http://subdomain.example.com/ </VirtualHost> <VirtualHost *:80>
example.com
tosubdomain.example.com
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com example.com
Redirect permanent / http://subdomain.example.com/
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/html/foo"
ServerName subdomain.example.com
ServerAlias subdomain.example.com
<Directory "/var/www/html/foo">
Options Indexes FollowSymLinks Includes
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from All
</Directory>
</VirtualHost>
情景2www.example.com
tosubdomain.example.com
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com example.com
Redirect permanent / http://subdomain.example.com/
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/html/foo"
ServerName subdomain.example.com
ServerAlias subdomain.example.com
<Directory "/var/www/html/foo">
Options Indexes FollowSymLinks Includes
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from All
</Directory>
</VirtualHost>
我已经将这两段代码放在了httpd.conf中。只有情况2起作用,但情况1不起作用
<VirtualHost *:80>
DocumentRoot "/var/www/html/foo"
ServerName domain.com
ServerAlias subdomain.example.com
<Directory "/var/www/html/foo">
Options Indexes FollowSymLinks Includes
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from All
</Directory>
Redirect permanent http://example.com/ http://subdomain.example.com/
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/html/foo"
ServerName www.example.com
ServerAlias subdomain.example.com
<Directory "/var/www/html/foo">
Options Indexes FollowSymLinks Includes
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from All
</Directory>
Redirect permanent / http://subdomain.example.com/
</VirtualHost>
DocumentRoot“/var/www/html/foo”
ServerName域名.com
ServerAlias subdomain.example.com
选项索引和以下符号链接包括
选项+执行CGI
允许超越所有
命令允许,拒绝
通融
重定向永久http://example.com/ http://subdomain.example.com/
DocumentRoot“/var/www/html/foo”
服务器名www.example.com
ServerAlias subdomain.example.com
选项索引和以下符号链接包括
选项+执行CGI
允许超越所有
命令允许,拒绝
通融
重定向永久/http://subdomain.example.com/
我想你可以试试这个:
<VirtualHost *:80>
DocumentRoot "/var/www/html/foo"
ServerName www.example.com
ServerAlias example.com
<Directory "/var/www/html/foo">
Options Indexes FollowSymLinks Includes
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from All
</Directory>
Redirect permanent / http://subdomain.example.com/
</VirtualHost>
DocumentRoot“/var/www/html/foo”
服务器名www.example.com
ServerAlias example.com
选项索引和以下符号链接包括
选项+执行CGI
允许超越所有
命令允许,拒绝
通融
重定向永久/http://subdomain.example.com/
我找到了答案。将example.com
和www.example.com
重定向到subdomain.example.com
,然后只设置subdomain.example.com
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com example.com
Redirect permanent / http://subdomain.example.com/
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/html/foo"
ServerName subdomain.example.com
ServerAlias subdomain.example.com
<Directory "/var/www/html/foo">
Options Indexes FollowSymLinks Includes
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from All
</Directory>
</VirtualHost>
ServerName example.com
ServerAlias www.example.com example.com
重定向永久/http://subdomain.example.com/
DocumentRoot“/var/www/html/foo”
ServerName subdomain.example.com
ServerAlias subdomain.example.com
选项索引和以下符号链接包括
选项+执行CGI
允许超越所有
命令允许,拒绝
通融
通过在httpd.conf中使用这些代码,我能够:
example.com
重定向到subdomain.example.com
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com example.com
Redirect permanent / http://subdomain.example.com/
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/html/foo"
ServerName subdomain.example.com
ServerAlias subdomain.example.com
<Directory "/var/www/html/foo">
Options Indexes FollowSymLinks Includes
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from All
</Directory>
</VirtualHost>
www.example.com
重定向到subdomain.example.com
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com example.com
Redirect permanent / http://subdomain.example.com/
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/html/foo"
ServerName subdomain.example.com
ServerAlias subdomain.example.com
<Directory "/var/www/html/foo">
Options Indexes FollowSymLinks Includes
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from All
</Directory>
</VirtualHost>
PHP请求是什么?@Forbs我在问题中已经说过,情况1和情况2您是否尝试复制第二种情况并粘贴它以替换第一种情况,然后删除example.com上的www?是的,我将收到example.com或subdomain.example.com
多次重定向您的错误。如果我进入www.example.com,链接将无效