Перезапись URL через .htaccess не работает должным образом

1

У меня есть.htaccess, который читается следующим образом

Options +FollowSymlinks

RewriteEngine On

RewriteBase /

RewriteRule ^([a-z0-9\-]+) /index.php?page_name=$1 [L]

Я хочу, чтобы ссылка http://www.solublesilicates.com/our-services при нажатии была прочитана как http://www.solublesilicates.com/?page_name=our-services. Пожалуйста, помогите.

  • 1
    Есть ли у вас ошибки?
Теги:
.htaccess
mod-rewrite

3 ответа

2
RewriteRule ^([a-z0-9\-]+)$ /index.php?page_name=$1 [L, QSA]

Просто измените это на вышесказанное. Должно работать отлично.

  • 0
    Это решение givinmg 500 Internal Server Error.
  • 0
    Структура URL моего сайта www.solublesilicates.com/our-services и в коде php она должна выглядеть как www.solublesilicates.com/?page_name=our-services.
Показать ещё 1 комментарий
1

У вас есть ошибка в синтаксисе. Ваше регулярное выражение должно заканчиваться значком $

RewriteRule ^([a-z0-9\-]+)$ /index.php?page_name=$1 [L]
  • 0
    Вы можете увидеть в этой статье $ необходимо отметить конец строки mediatemple.net/community/products/dv/204643270/…
  • 0
    Да, вы правы, но $ необязательно в шаблоне rewriteRule. Вы можете попробовать код на вашем сервере, чтобы увидеть это.
Показать ещё 2 комментария
1

Измените правило Rewrite на

RewriteRule ^([A-Za-z0-9\-]+) index.php?page_name=$1 [L,QSA]

  • 0
    не работает. Структура URL моего сайта www.solublesilicates.com/our-services и в коде php она должна выглядеть как www.solublesilicates.com/?page_name=our-services.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню