Я пытаюсь организовать свои веб-сайты с помощью .htaccess, и мне нужна следующая конфигурация:
- URL-адрес основного сайта должен быть beta.example.com/portal/
- Другие сайты должны быть на beta.example.com/othersite/
- Если пользователи переходят на beta.example.com, они должны быть перенаправлены с 301 на beta.example.com/portal/
- beta.example.com / portal (без завершающего слеша) следует перенаправить на beta.example.com/portal/
- / portal / - это не физический путь к файлу на сервере.Я хочу, чтобы все эти сайты были в одной папке, скажем, / html / www / sites /
- Папка, в которой находится портал, не должна находиться в / html / www / sites / portal /, но яхотите иметь возможность переключать работающий сайт на новую версию (в другой папке) на сервере, быстро, невидимо, без простоев.Кстати, это касается всех сайтов.
В настоящее время я работаю с двумя или тремя файлами .htaccess: один в корне (www.), Который направляет beta.example.com в папку./ website /
#RewriteBase / #should I use rewritebase or not?
/RewriteCond %{HTTP_HOST} ^beta.example.com$
RewriteRule (.*) websites/$1 [L,NC]
Файл .htaccess находится в папке / sites /, а может быть, другой, а может и не в папке, в которой находится сайт.
RewriteBase /websites # or, not...
# rewrite the active site to the folder /portal_v1.0/
RewriteCond %{REQUEST_URI} ^/portal/
RewriteRule (.*) portal_v1.0/$1 [L]
# rewrite the root to /portal/
RewriteRule ^$ http://beta.example.com/portal/ [L,NC]
Однако,Я до сих пор не могу заставить это работать так, как я хочу.Одна проблема заключается в том, что beta.example.com/portal перенаправляет на www.example.com/websites/portal/, я не хочу этого.Помогите!Заранее спасибо!