2016-02-04 3 views
0

Я пытаюсь сделать конкретные правила перезаписи с помощью .htaccess, но мне нужна помощь, но это не работает.переписать правила с apache не работает

Это мой URL: http://mywebsite.net/aaa-bbbb/cccc

ааа = динамический параметр ([AZ])
ГЭБ = динамический параметр ([AZ])
сссса = динамический параметр, но optionnal ([AZ])

И я хочу переписать пользователю этот адрес:
http://mywebsite.net/mydir/ccc?x=aaa&y=bbbb **

URL все равно будет http://mywebsite.net/aaa-bbbb/cccc на TabBar

я попробовать это RewriteRule^([AZ] +) - ([AZ] +)/([AZ] +) $ MYDIR/$ 3 [L]

но он не работает

thx!

+0

И «но это не работает» означает, что именно? Вы получили сообщение об ошибке? Неправильное перенаправление? Ничего не происходит вообще? Уничтожает ли вселенная? – arkascha

+0

У меня ошибка 404. – philou13010

+0

И ваш файл журнала ошибок HTTP-серверов содержит запись для этого запроса? – arkascha

ответ

0

Переписать запрос

http://mywebsite.net/aaa-bbbb/cccc 

внутренне

/mydir/ccc?x=aaa&y=bbbb 

вам нужны такие правила перезаписи:

RewriteEngine on 
RewriteRule ^([a-z]+)-([a-z]+)/([a-z]+)$ /mydir/$3?x=$1&y=$2 [L] 

Примечание: вышеупомянутое правило имеет синтаксис для использования внутри конфигурации хоста http-серверов. Если вы действительно хотите использовать файл в .htaccess стиле вместо этого вам нужно использовать немного измененную синтаксис, так как эти файлы работают на относительных путей:

RewriteEngine on 
RewriteRule ^([a-z]+)-([a-z]+)/([a-z]+)$ mydir/$3?x=$1&y=$2 [L] 

Вы можете обнаружить в переписывания цели недостающую /. Файл стиля .htaccess должен находиться внутри папки с папкой mydir, чтобы она работала. Также интерпретация таких файлов должна быть включена вообще в конфигурации http-сервера.


Общее примечание: .htaccess файлы стилей, как известно, подвержены ошибкам, трудно отлаживать и они действительно замедлять сервер HTTP ничего. Они предлагаются только в качестве последнего варианта для тех , а не, имеющих доступ к конфигурации хоста http-серверов. Так, например, для чит-хостинг-провайдеров. В общем, вы должны всегда предпочитают размещать такие правила внутри самой конфигурации хоста.

Смежные вопросы