Я пытаюсь создать правильный .htaccess, который позволил бы мне отображать так:
http://domain.com/ --> http://domain.com/home
http://domain.com/whatever --> http://domain.com/home/whatever
http://user.domain.com/ --> http://domain.com/user
http://user.domain.com/whatever --> http://domain.com/user/whatever/
Здесь кто-то может ввести вышеуказанные URL, однако внутри, он будет перенаправлен так, как если бы онесли бы URL был справа.
Также поддомен будет динамическим (то есть http://user.domain.com не является действительным поддоменом, но будет перезаписан .htaccess)
Также/ home - мой контроллер по умолчанию, поэтому ни один поддомен не будет внутренне принудительно устанавливать его для / home controller, и любые пути, следующие за ним (как показано в примере №2 выше), будут (catch-all) функцией внутри этого контроллера.
Точно так же, если будет передан поддомен, он будет передан как (catch-all) контроллер вместе с любыми (catch-all) функциями для него (как показано в # 4 примере выше)
Надеюсь, я нездесь я спрашиваю много, но я не могу понять, какие правильные .htaccess или правила маршрутизации (в Codeigniter) для этого.
httpd.conf и хосты настроены просто отлично.
РЕДАКТИРОВАТЬ # 1
ЗдесьЭто мой .htaccess, который приближается, но в какой-то момент все портится:
RewriteEngine On
RewriteBase /
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{HTTP_HOST} ^([a-z0-9-]+).domain [NC]
RewriteRule (.*) index.php/%1/$1 [QSA]
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L,QSA]
С вышеизложенным, когда я посещаю: http://test.domain/abc/123 это то, что я замечаю в $ _SERVER var (Я удалил некоторые поля):
Array
(
[REDIRECT_STATUS] => 200
[SERVER_NAME] => test.domain
[REDIRECT_URL] => /abc/123
[QUERY_STRING] =>
[REQUEST_URI] => /abc/123
[SCRIPT_NAME] => /index.php
[PATH_INFO] => /test/abc/123
[PATH_TRANSLATED] => redirect:\index.php\test\test\abc\123\abc\123
[PHP_SELF] => /index.php/test/abc/123
)
Вы видите, что PATH_TRANSLATED не формируется должным образом, и я думаю, что это может испортить ситуацию?