@bilyaev82

Почему не работает RewriteRule ,ЧПУ?

Уже несколько дней не могу решить проблему...Замучился вконец. В общем есть локальный сайт на openserver 5.2.2(apache 2.4) по адресу domains/myshop.local.Создается на движке smarty.В папке www находится index.php и htaccess. Есть вот такая ссылка http://myshop.local/www/product/12,которая должна "пониматся" как ?controller=$1&id=$2 вот код htaccess:
AddDefaultCharset utf-8
Options +FollowSymLinks
Options -Indexes
DirectoryIndex index.php
RewriteEngine On
RewriteBase /

php_flag register_globals on

RewriteRule ^([a-z]+)/([a-z]+)/([0-9]+)/$ /?controller=$1&action=$2&id=$3&%{QUERY_STRING} [NS,L]
RewriteRule ^([a-z]+)/([a-z]+)/$ /?controller=$1&action=$2&%{QUERY_STRING} [NS,L]
RewriteRule ^([a-z]+)/([0-9]+)/$ /?controller=$1&id=$2&%{QUERY_STRING} [NS,L]
RewriteRule ^(product)/([0-9]+)/$ /?controller=$1&id=$2&%{QUERY_STRING} [NS,L]
RewriteRule ^([a-z]+)/$ /?controller=$1&%{QUERY_STRING} [NS,L]

RewriteCond $1 !^(index\.php)
RewriteCond %{REQUEST_URI} !\.(css│js│jpg│gif)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

Соотвественно,переходя по этой ссылке выбивает ошибку 404.Причем,когда ссылку пишешь через get параметр,а не ЧПУ - ВСЕ РАБОТАЕТ. С регулярками,только что с бубном не танцевал).Как решить эту проблему ума не приложу.
  • Вопрос задан
  • 117 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы