我已经引用了这个问题,但我不知道如果我清楚这种情况下如何工作:
我有一个客户与两个品牌,目前在线这样的:
Brand A (site 1) Brand B (site 2) --- --- site 1 pages site 2 pages
现在,他们已经build立了一个新的网站,结合两个网站的内容,并将他们的两个品牌整合为一个:
Brand Unified (site 3) --- site 3 pages
很明显,我更新每个域的Alogging后,我想为每个原始站点放置301个redirect。 不过,新网站是一个自定义的WordPress主题,WP只允许每个安装一个域。 这使我有一种情况,我可以将品牌A的原始顶级域名(TLD)指定为WordPress的站点URL,然后将品牌B域redirect到A.
我以为我会在Apache站点conf中使用这样的服务器块:
<VirtualHost *:80> ServerName site1.com #site1.com now points directly here ServerAlias site2.com #site2.com points directly but redirects ServerAdmin [email protected] DocumentRoot /var/www/newsite
所以,假设这个configuration没有问题,如果我尝试为site1和site2链接实现301redirect会发生什么? 具体来说,由于site2.com现在被列为site1.com的别名,我仍然可以在/var/www/newsite/目录中的.htaccess文件中有效地redirect301个文件,或者ServerAlias是否会干扰该文件? 我想知道如果它被别名回到site1.com,因此301规则不会触发?
如果你能够configurationApache conf,为什么复杂的情况,并把redirect(或任何)在.htaccess文件? 您似乎将site2.com分配给/ var / www / newsite只是为了使用.htaccess而没有别的。 我会保持简单,一切都在一个地方:
NameVirtualHost *:80 <VirtualHost *:80> ServerName site1.com DocumentRoot /var/www/newsite </VirtualHost> <VirtualHost *:80> ServerName site2.com # Specifically mapped redirects Redirect permanent /foo/ http://site1.com/new-foo/ # Root redirect (if no other cases above match) Redirect permanent / http://site1.com </VirtualHost>