Может быть, это будет очень простой вопрос, мой URL-адрес сайта ужасно написан, поэтому я хочу переписать их. Поэтому я готов активировать mod_rewrite. Вопрос заключается в следующем:
Предположим, мой url переключается с site_url/index.php?page=mypage&type=mytype
на site_url/mypage/mytype
, что произойдет, если обновить страницу, нужно ли в файле .htaccess site_url/mypage/mytype
процесс для перезаписи?
Вам нужна комбинация переадресации и перезаписи. Проект схемы процесса перезаписи URL-адресов будет следующим:
.php
, 301/302 перенаправляет запрос в свою дружественную для SEO версию. Это изменит адрес в адресной строке браузера. Вот очень простой пример правил перезаписи, которые делают оба перечисленного:
# # redirect /index.php?page=somepage&type=sometype to friendly url # RewriteCond %{THE_REQUEST} /index\.php RewriteCond %{QUERY_STRING} page=(\w+)&type=(\w+) RewriteRule ^index\.php$ /%1/%2? [R,L] # # rewrite /somepage/sometype to index.php # RewriteRule ^(\w+)/(\w+)$ index.php?page=$1&type=$2
В .htaccess вы должны сделать вперед, который отображает …
^/(mypage)/(mytype) to index.php?page=$1&type=$2
Но обратное нужно оставить в покое. Поэтому прямой запрос на site_url/index.php?page=mypage&type=mytype
будет просто передан как есть.
Итак, обновление ничего не изменит.