2012-01-01 3 views
0

В настоящее время я переписывание URL, как:Удалить «индекс» из URL

RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^/?([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/?$ articles.php?article=$2 

Это позволяет мне писать ссылки, такие как ниже, в зависимости от исполняемой в данный момент страницы.

www.example.com/blog/new-article 
    www.example.com/gallery/new-gallery 

И поэтому это также приводит к следующему, когда выполняется на домашней странице:

www.example.com/index/new-post 

Я хотел бы, чтобы только URL-адреса с «индексом» в них, получить переписаны без него, таких как:

www.example.com/index/new-post -> www.example.com/new-post 

Это можно сделать? Спасибо заранее, ребята!

+0

Вы хотите, чтобы пользователю ввести 'www.example.com/New-Post' и сервер внутренне изменить URL для' www.example.com/index/new-post', или наоборот? –

ответ

0

Добавьте это перед вашими другими правилами:

RewriteRule ^index/(.*)$ /$1 [L] 
+0

Я сделал это первым правилом, но он не работает, но это приводит к тому, что 404 не найдено – Cristian

+0

. Было бы что-то вроде: RewriteCond $ 1^(index) RewriteRule^(. *) $ Articles.php? Article = $ 1 [L] – Cristian

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