需要在一个托管帐户中组织多个网站,将每个网站放入自己的文件夹中。
通过CPANEL,这已完成并适用于附加域,但主站点(及其所有子文件夹)也需要位于其自己的文件夹中。
我一直通过PHP做到这一点:
example.com/index.php:
<?php
header('Location: subdir/mainsite/index.php');
?>
缺点是网站重定向时会有页面闪烁。
另一个缺点是URL反映了地址栏中的新位置:
http://example.com/subdir/mainsite/
我只希望访问者看到http://example.com
我怀疑这可以通过使用htaccess而不是PHP来解决。
所以,如果我的域名是:
http://example.com
我将主站点文件放在:
public_html/_sub/mainsite
附加网站必须继续运作......
htaccess会是什么样子?
这就是我到目前为止:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/_sub/mainsite/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /_sub/mainsite/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ _sub/mainsite/index.php [L]