Загрузить новый сайт из подкаталога в качестве индекса - PullRequest
2 голосов
/ 27 августа 2011

Я хочу загрузить свой новый веб-сайт из подкаталога, включая страницу index.html по умолчанию.

В моем public_html у меня есть / oldsite / и / newsite / folder ...

Затем.Когда я получаю доступ к http://www.mysite.com/.., я хочу, чтобы он загружал все содержимое из http://www.mysite.com/newsite/ без перенаправления.Я хочу сделать это с .htaccess mod_rewrite, если это возможно ..

Может кто-нибудь помочь мне с этим.Как это сделать?

Ответы [ 2 ]

7 голосов
/ 27 августа 2011
# to ensure that server already know that you going to use mod-rewrite
RewriteEngine on
# if the request from http is mysite.com or www.mysite.com go to next line (else abort)
RewriteCond %{HTTP_HOST} ^(www.)?mysite.com$ [NC]
# if the request destination is not the folder /newsite go to next line
RewriteCond %{REQUEST_URI} !^/newsite/
# if the requested name is not an existed file in public_html directory
RewriteCond %{REQUEST_FILENAME} !-f
# if the requested name is not an existed directory in public_html directory
RewriteCond %{REQUEST_FILENAME} !-d
# forward request to /newsite/
RewriteRule ^(.*)$ /newsite/$1
# if the request domain is mysite.com (with out any string afterward), go to next line
RewriteCond %{HTTP_HOST} ^(www.)?mysite.com$ [NC]
# forward request to the default file under newsite directory
RewriteRule ^(/)?$ newsite/ [L]
0 голосов
/ 27 августа 2011

Как правило, развертывать такой сайт не очень хорошая идея.Вместо этого вам следует создавать виртуальные хосты для живой и разрабатываемой версий вашего сайта.Если вы не можете сделать это с вашим текущим хостинг-провайдером, вы можете использовать символическую ссылку для public_html, и когда новая версия будет готова к запуску, просто измените ее путь.Надеюсь, это поможет.

...