Я реализую функцию поиска на своем сайте портала вакансий. В этом я использовал метод "get" для поиска, то есть url отобразит ключевые слова.
Например www.domain.com/search.php?keyword=php&location=lodon
В указанном выше ключевом слове поиска URL-адрес "php", выбранное местоположение "Лондон".
Я хочу отобразить URL-адрес, например
www.domain.com/search/php-jobs-in-london
Как переписать это с помощью htaccess в php
никогда не делал ничего подобного, но я собираюсь хотя бы попытаться дать вам место для начала.
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^search/([a-zA-Z]+)-jobs-in-([a-zA-Z]+)/?$ /search.php?keyword=$1&location=$2 [NC,L]
Линии:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
Сделать RewriteRule недействительным при попытке доступа к файлу или каталогу.
Третий важный, поскольку он форматирует URL-адрес, каждая скобка будет параметром, который вы передадите фактическому URL-адресу через метод GET.
Чтобы понять смысл выражения, вы можете посмотреть здесь: http://www.webforgers.net/mod-rewrite/mod-rewrite-syntax.php