SearchEngines.bg

Това е примерно съобщение за гост. Регистрирайте безплатен акаунт днес, за да станете потребител на SearchEngines.bg! След като влезете, ще можете да участвате в този сайт, като добавите свои собствени теми и публикации, както и да се свържете с други членове чрез вашата лична входяща кутия! Благодарим ви!

.htaccess, RewriteRule и URL'та от латиница към кирилица

quinox

New member
Здравейте,

Дано тази тема попада в правилната секция и не се повтарям(да, потърсих преди това...).

Задача:
Да се rewrite'нат URL'та от латиница към кирилица, чрез .htaccess. Файловете в сайта са .php, а файла .htaccess е UTF8, без BOM.
www.temp.com/contact.php - > www.temp.com/контакти

Решение(което работи отчасти):
RewriteEngine On
RewriteCond %{HTTP_HOST} ^temp.com [NC]
RewriteRule ^(.*)$ http://www.temp.com/$1 [L,R=301]
RewriteRule ^контакти\/?$ contact.php

Дотук всичко е "окей", защото решението работи... Т.е. www.temp.com/контакти се отваря безпроблемно, но по същия начин, остава и www.temp.com/contact.php. А ми се иска при зареждане на www.temp.com/contact.php, потребителя да бъде пренасочен към www.temp.com/контакти...

Идеи/предложения :) ?
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

Ако не допуснеш по някаква причина www.temp.com/contact.php да се индексира преди www.temp.com/контакти, няма за какво да се тревожиш, поне според мен.

Иначе тази тема може да ти е от полза:

http://searchengines.bg/showthread.php?t=19616&p=150035#post150035
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

При нов сайт, не е проблем... Но да кажем, че работиш по вече индексирани страници, и искаш да ползваш 301 forward + промяна на URL'тa?
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

Пробвай така
RewriteRule ^контакти\/?$ contact.php [QSA,L]

When the replacement URI contains a query string, the default behavior of RewriteRule is to discard the existing query string, and replace it with the newly generated one. Using the [QSA] flag causes the query strings to be combined.
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

RewriteRule ^контакти\/?$ contact.php прави вътрешен редирект. Сложи
Код:
RewriteRule ^контакти\/?$ http://site.com/contact.php
и ще си на 6.
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

Мерси за предложението vibrobg, но не запали :( Същата ситуация, като до момента...
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

10x и на теб, bgkulinar, но това го бях пробвал, но и то не сработи... В този случай, www.site.com/контакти пренасочва към contact.php @№%$@№%@
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

Прочети малко за адреси на кирилица в htaccess. Аз съм ти дал въдицата и съм казал къде да ловиш. От теб зависи дали ще хванешш рибата.
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

Рег'нах се във форума по тази причина, че след четене и пробване нищо не се получи... Засега не се виждат риби на хоризонта :)
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

Последна безплатна консултация:
Код:
RewriteRule ^/%D0%BA%D0%BE%D0%BD%D1%82%D0%B0%D0%BA%D1%82%D0%B8\/?$ http://site.com/contact.php
 
За: .htaccess, RewriteRule и URL'та от латиница към кирилица

За: .htaccess, RewriteRule и URL'та от латиница към кирилица

Благодаря и за последната безплатна консултация :) Знам как стоят нещата, не исках, да се "възползвам" за без пари :))
Ето и решението, поне за моята ситуация... тъй като друго нищо не сработи:
Код:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^temp.com [NC]
RewriteRule ^(.*)$ http://www.temp.com/$1 [L,R=301]
RewriteRule ^контакти\/?$ contacts.php [NC,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /contacts\.php [NC]
RewriteRule ^contacts.php$ /контакти [L,R=301]
 

Горе