У меня проблемы с .htaccess. Я хочу создать дружественные URL для сайта, над которым я работаю ...
В основном я хочу преобразовать это:
http://website.com/index.php?ctrl=pelicula&id=0221889
http://website.com/index.php?ctrl=pelicula&id=0160399&tab=posters
В это:
http://website.com/pelicula/0221889/
http://website.com/pelicula/0221889/posters/
В случае, если это понадобится позже, я бы также хотел узнать, как добавить заголовок статьи в конец URL-адреса следующим образом (я использую PHP):
http://website.com/pelicula/0221889/the-article-name/
http://website.com/pelicula/0221889/the-article-name/posters/
Примечание: метод Stackoverflow также хорош для меня, например, URL этого вопроса:
http://stackoverflow.com/questions/3033407/htacces-to-create-friendly-urls-help-needed
Но вы можете поставить что-нибудь после идентификатора, и это тоже будет работать. как это:
http://stackoverflow.com/questions/3033407/just-anything-i-want
Я использовал некоторые автоматические веб-инструменты для создания файла .htacces, но он работает неправильно. Поэтому я прошу вашей помощи.
Я также буду рад, если вы порекомендуете .htacces лучшие практики и рекомендации ..
РЕДАКТИРОВАТЬ: на основе некоторых ответов, которые я получаю здесь, я положил это:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/([^/]+)/([^/]+)/?([^/]*)/?$ index.php?ctrl=$1&id=$2&tab=$3 [QSA,L]
</IfModule>
Но я получаю по умолчанию сообщение об ошибке "страница не найдена".
Я тоже пробовал:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/(\d+)/([^/]+)/?$ index.php?ctrl=$1&id=$2&tab=$3 [QSA,L]
RewriteRule ^([^/]+)/(\d+)/?$ index.php?ctrl=$1&id=$2 [QSA,L]
RewriteRule ^([^/]+)/?$ index.php?ctrl=$1 [QSA,L]
</IfModule>
Это тоже не работает. Это возвращает меня к моей странице по умолчанию 404.php.
mod_rewrite включен и работает.
Помощь!