Пожалуйста, помогите мне перенаправить, используя .htaccess, как показано ниже.Как перенаправить использование .htaccess с помощью Apache?
http://info.domainname.com/blog/?Tag=somedynamictag
в
http://domainname.com/tag/somedynamictag
Спасибо!
Пожалуйста, помогите мне перенаправить, используя .htaccess, как показано ниже.Как перенаправить использование .htaccess с помощью Apache?
http://info.domainname.com/blog/?Tag=somedynamictag
в
http://domainname.com/tag/somedynamictag
Спасибо!
Прежде всего, я не понимаю цели переписывания http://info.domainname.com/blog/?Tag=somedynamictag в http://domainname.com/tag/somedynamictag, когда это должно было быть наоборот. Люди переписывают URL-адреса для их очистки (например, удаляют символы, такие как ?
, &
, =
и т. Д.), Но вы добавляете все это и делаете URL-страницы громоздкими.
Я думаю, что вы неправильно поняли концепцию перезаписи URL-адресов. Позвольте мне немного объяснить.
Когда на вашем веб-сайте доступен любой URL-адрес, URL-адрес, который типы или клики USER (в вашем случае http://domainname.com/tag/somedynamictag) переписан. Но ваш вопрос подсказывает мне, что вы думаете по-другому. Вы понимаете, что посетитель нажимает http://info.domainname.com/blog/?Tag=somedynamictag и будет переписан на http://domainname.com/tag/somedynamictag. ЭТО НЕПРАВИЛЬНО !!. Если вы настроили свой сайт таким образом, каждый URL-адрес в http://domain.com/ должен существовать как отдельный файл или каталог, который, как ожидается, не будет иметь динамический веб-сайт, похожий на вас. Поэтому я предполагаю, что вы поняли, что вы либо неправильно определили вопрос, либо вы неправильно поняли концепцию перезаписи URL. Ниже приведен код .htaccess для перенаправления http://domainname.com/tag/somedynamictag на http://info.domainname.com/blog/?Tag=somedynamictag.
RewriteEngine On
RewriteCond %{HTTP_HOST} domainname.com
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9]+)\/(.*)$ http://info.domainname.com/blog/?$1=$2 [L,R=301]
Если вы думаете, что вы правильно ввели вопрос и понял URL переписывания правильно и уверены, что вы пытаетесь сделать, это правильно, то вот код Htaccess (если вы хотите перенаправить http://info.domainname.com/blog/?Tag=somedynamictag к http://domainname.com/tag/somedynamictag).
RewriteEngine On
RewriteCond %{HTTP_HOST} info.domainname.com
RewriteRule ^blog\/\?([A-Za-z0-9]+)=(.*)$ http://domainname.com/$1/$2 [L,R=301]
Если это не работает, в index.php в http://info.domainname.com/blog/, поместите следующий код:
<?php
header("HTTP/1.1 301 moved permanently");
header("Location:http://domainname.com/blog/tag/".$_GET['Tag']);
?>
И спасибо за этот вопрос. Отвечая на это, я многое узнал.
Надежда, которая отвечает на ваш вопрос,
мира ...
Большое спасибо за вашу помощь. После добавления кода я получаю внутреннюю ошибку сервера. .htaccess файл, как показано ниже # НАЧАТЬ WordPress RewriteEngine На RewriteBase/ RewriteRule^индекс \ .php $ - [L] RewriteCond% {REQUEST_FILENAME} -f RewriteCond% {REQUEST_FILENAME}! -d RewriteRule. /index.php [L] RewriteCond% {HTTP_HOST} info.domainname.com RewriteRule^blog \/\? ([A-Za-z0-9] +) \ = (. *) $ http://доменное имя.com/$ 1/$ 2 [L, R = 301] # END WordPress Спасибо! –
Hussain
Я обновлю несколько минут. –
Вы включили mod_rewrite? –