Привет, я очень новичок в переписывании. У меня есть хост Apache, на котором размещается мой сайт, и мне нужно сделать переписку с URL, чтобы он выглядел лучше, чем сейчас.
Поэтому у меня есть эта ссылка http://www.kalah.co.za/content.php?page=Civil%20Tactical%20Training, и я хочу, чтобы это выглядело как http://www.kalah.co.za/Civil-Tactical -Training.html
Теперь я могу сделать первый бит, я думаю, с помощью этого кода
RewriteEngine On RewriteRule ^([^/]*)\.html$ /content.php?page=$1 [L]
Но мне нужно также удалить или заменить вещи. Я не знаю, что более оптимистично для SEO, и любые предложения и рекомендации / рекомендации будут оценены.
PS: Также есть .htaccess с сервера Windows и сервера Apache по-разному с точки зрения перезаписи?
Вы можете иметь эти правила в своем корневом каталоге .htaccess:
RewriteEngine On RewriteBase / # external redirect from actual URL to pretty one (remove query string) RewriteCond %{THE_REQUEST} \s/+content\.php\?page=([^\s&]+) [NC] RewriteRule ^ %1? [R=302,L,NE] # convert all space (%20) to hyphen RewriteRule "^(\S*) +(\S* .*)$" $1-$2 [N,NE] RewriteRule "^(\S*) (\S*)$" $1-$2 [L,R=302,NE] # rewrite rule to call actual PHP handler RewriteRule ^([^./]+)\.html$ content.php?page=$1 [L,QSA,NC]