У меня есть сайт, на котором я хотел бы преобразовать первую подпапку в параметр (из заданного списка подпапок), поэтому
http://localhost/mysite/folder1/dosomething.php
отображается как показано выше, но для PHP это выглядит так:
... localhost / mysite / dosomething.php? Organization = folder1
Мне нужно делать это только для определенных папок (например, не ... localhost / mysite / admin /), и мне нужно учитывать тот факт, что параметры могут быть добавлены или не добавлены в URL *. 1010 *
Я создаю сайт для использования несколькими организациями, и в зависимости от организации, цвета и т. Д. На сайте должны быть разными, но каждая организация будет использовать одни и те же страницы, и клиенту нужен шорткод организации в URL. Я думал, что лучший способ сделать это будет с mod_rewrite.
Я пробовал:
rewriterule ^folder1/(.*) $1&organisation=folder1 [NC]
но это не работает и не обрабатывает тот факт, что к URL-адресу уже могут быть параметры. Кто-нибудь может предложить способ сделать это?
С уважением и благодарностью
На основе ваших отзывов:
Хм, я не могу заставить это работать. В .htaccess у меня есть
Опции + FollowSymLinks
ПереписатьEngine на
RewriteRule ^ folder1 /(.*) $ 1 & organization = folder1 [NC, QSA]
Если я просматриваю ... server / sitename / folder1 / destination.php, я получаю сообщение об ошибке «страница не найдена», а в журнале отладки htaccess говорится:
(3) [perdir / var / www / sitename /] добавить постфикс с информацией о пути: / var / www / sitename / folder1 -> /var/www/sitename/folder1/destination.php
(3) [perdir / var / www / sitename /] strip префикс per-dir: /var/www/sitename/folder1/destination.php -> folder1 / destination.php
(3) [perdir / var / www / sitename /] применяет шаблон '^ folder1 /(.)' к uri 'folder1 / destination.php'
(2) [perdir / var / www / sitename /] переписать 'folder1 / destination.php' -> 'destination.php & organization = folder1'
(3) [perdir / var / www / sitename /] добавить префикс per-dir: destination.php & organization = folder1 -> /var/www/sitename/destination.php&organisation=folder1
(2) [perdir / var / www / sitename /] strip префикс document_root: /var/www/sitename/destination.php&organisation=folder1 -> /sitename/destination.php&organisation=folder1
(1) Внутренний редирект [perdir / var / www / sitename /] с /sitename/destination.php&organisation=folder1 [ВНУТРЕННЕГО ПЕРЕНОСА]
(3) [perdir / var / www / sitename /] полоса префикса per-dir: /var/www/sitename/destination.php&organisation=folder1 -> destination.php & organization = folder1
(3) [perdir / var / www / sitename /] применяет шаблон '^ folder1 /(.)' к uri 'destination.php & organization = folder1'
(1) [perdir / var / www / sitename /] проходит через /var/www/sitename/destination.php&organisation=folder1