В основном моя проблема заключается в следующем. Я настроил систему, которая принимает поддомены подстановочных знаков, и переписывает их для одной установки CodeIgniter. Есть контроллер по имени диспетчер, который принимает требуемые аргументы, а также передает поддомен, используемый в URL.
Моя проблема заключается в следующем: мне нужно создать RewriteRules, которые соответствуют структуре URL CodeIgniter. В настоящее время у меня есть это:
RewriteEngine On
# Extract the subdomain part of domain.com
RewriteCond %{HTTP_HOST} ^([^\.]+)\.ev-apps\.com$ [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
# Check that the subdomain part is not www and ftp and mail
RewriteCond %1 !^(www|ftp|mail)$ [NC]
# Redirect all requests to a php script passing as argument the subdomain
RewriteRule ^/(.*)/(.*)$ /dispatcher/run_app/$1/$2/%1 [L,QSA] # First is app name, then site, then action
RewriteRule ^/(.*)/(.*)/(.*)$ /dispatcher/run_app/$1/$2/$3/%1 [L,QSA] # First is app name, then site, then action, then any passed data.
Хорошо работает для URL-адресов, которые следуют этому формату "http://example.ev -apps.com / app / method / 1 ", но не для "http://example.ev -apps.com / app / * метод 1011 *». Кажется, что все это неправильно, но в идеале мне нужно решение, которое будет работать для любого количества сегментов, например: "http://example.ev -apps.com / app / method / 1/2/3/4 / 5/6/7/8/9 и т. Д.
Любая помощь будет принята с благодарностью.