htaccess и переписать мои URL - PullRequest
0 голосов
/ 21 февраля 2012

Я пытаюсь организовать свои веб-сайты с помощью .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/, я не хочу этого.Помогите!Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...