У меня есть компонент Joomla «com_foo», который хорошо работает, когда вызывается через ...Joomla URL переписывания для компонента без редиректа
http://my.joomla.site/index.php?option=com_foo&id=1234
... но мне нужен URL быть в следующем формате :
http://my.joomla.site/getfoo/1234
ближайший я могу получить это со следующим .htaccess переписывания, который вызывает редирект:
RewriteEngine On
# My Rule
RewriteRule ^getfoo/(.*)$ /index.php?option=com_foo&id=$1 [R=301,L]
# Joomla rules
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/index\.php
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
Я не могу понять, как заставить одно и то же работать «внутренне» без переадресации. Так что в моем примере выше, что случается:
[1] GET http://my.joomla.site/getfoo/1234 REDIRECTS TO
[2] GET http://my.joomla.site/index.php?option=com_foo&id=1234 RENDERS PAGE
Что мне нужно
[1] GET http://my.joomla.site/getfoo/1234 RENDERS PAGE
Почти все Стараюсь результаты в 500 ошибок. Я чувствую, что это должно быть что-то простое, но в этот момент меня били.
Спасибо! Я думал, что, вероятно, лучший способ. Я еще не полностью решил это, так как у меня проблемы с разбором маршрута и скрытыми меню, но я рядом. –