lostyazilim
tr.link

Htaccess ile bu yapılabilir mi?

7 Mesajlar 1.062 Okunma
acebozum
tr.link

Shrikeen Shrikeen Frontend Developer Kullanıcı
  • Üyelik 24.06.2011
  • Yaş/Cinsiyet 34 / E
  • Meslek Front End Developer
  • Konum İstanbul Avrupa
  • Ad Soyad F** Ş**
  • Mesajlar 2933
  • Beğeniler 745 / 744
  • Ticaret 60, (%100)
Merhaba arkadaşlar, script geliştiriyorum bu yüzden bilmediğim birkaç şey hakkında yardım istiyorum.

Şimdi yurtdışından biri benim siteme giriyor. Benim sitemde girdiği zaman http://www.siteadi.com/lang:en 'a yönlendirmesini istiyorum.

Türkiye'den girdiği zaman
http://www.siteadi.com/lang:tr'ye yönlendirmesini istiyorum. Bunu ipinfodb ile daha sağlıklı yapabiliyoruz ama o kadar fazla kod bilgim yok.

Yardımcı olan arkadaşlara şimdiden teşekkürler.
 

 

wmaraci
reklam

altunoren altunoren bilmenizgerek.com Kullanıcı
  • Üyelik 07.09.2013
  • Yaş/Cinsiyet 36 / E
  • Meslek Web Yazılım, Grafik Tasarım
  • Konum KKTC
  • Ad Soyad İ** A**
  • Mesajlar 356
  • Beğeniler 25 / 99
  • Ticaret 0, (%0)
Mümkündür. Ülke kodlarını bul ona göre bunu geliştir


RewriteCond %{HTTP:Accept-language} tr [NC]
RewriteRule ^$ /lang:tr [L,R=301]

RewriteCond %{HTTP:Accept-language} en [NC]
RewriteRule ^$ /lang:en [L,R=301]
 

 

Shrikeen Shrikeen Frontend Developer Kullanıcı
  • Üyelik 24.06.2011
  • Yaş/Cinsiyet 34 / E
  • Meslek Front End Developer
  • Konum İstanbul Avrupa
  • Ad Soyad F** Ş**
  • Mesajlar 2933
  • Beğeniler 745 / 744
  • Ticaret 60, (%100)

altunoren adlı üyeden alıntı

Mümkündür. Ülke kodlarını bul ona göre bunu geliştir


RewriteCond %{HTTP:Accept-language} tr [NC]
RewriteRule ^$ /lang:tr [L,R=301]

RewriteCond %{HTTP:Accept-language} en [NC]
RewriteRule ^$ /lang:en [L,R=301]


Hocam bu şekilde yaptım fakat dili ingilizce'ye çevirsem bile siteyi F5'leyince tekrar beni Türkçe dile atıyor. Sürekli siteadi.com/lang:tr olarak geliyor site önüme.

VPS'den de denedim tekrar Türkçe geliyor.
 

 

altunoren altunoren bilmenizgerek.com Kullanıcı
  • Üyelik 07.09.2013
  • Yaş/Cinsiyet 36 / E
  • Meslek Web Yazılım, Grafik Tasarım
  • Konum KKTC
  • Ad Soyad İ** A**
  • Mesajlar 356
  • Beğeniler 25 / 99
  • Ticaret 0, (%0)

XGames adlı üyeden alıntı

Hocam bu şekilde yaptım fakat dili ingilizce'ye çevirsem bile siteyi F5'leyince tekrar beni Türkçe dile atıyor. Sürekli siteadi.com/lang:tr olarak geliyor site önüme.

VPS'den de denedim tekrar Türkçe geliyor.


Hocam bu ülkeye göre otomatik dil seçme komutudur. Eğer el ile yapmayı planlıyorsan cookie ya da session sistemi kullanman gerek. Google'a "php dil seçimi" yazarsan bir sürü sonuç çıkacaktır.
 

 

wmaraci
wmaraci

Shrikeen Shrikeen Frontend Developer Kullanıcı
  • Üyelik 24.06.2011
  • Yaş/Cinsiyet 34 / E
  • Meslek Front End Developer
  • Konum İstanbul Avrupa
  • Ad Soyad F** Ş**
  • Mesajlar 2933
  • Beğeniler 745 / 744
  • Ticaret 60, (%100)

altunoren adlı üyeden alıntı

Hocam bu ülkeye göre otomatik dil seçme komutudur. Eğer el ile yapmayı planlıyorsan cookie ya da session sistemi kullanman gerek. Google'a "php dil seçimi" yazarsan bir sürü sonuç çıkacaktır.


Hocam anladım dediğinizi fakat sitede şu anda 3 dil var fakat manuel olarak seçiliyor. Açılırken'de Türkçe olarak açılıyor. Fakat ben verdiğiniz kodları htaccess'e ekledim. Site dilini'de İngilizce'ye çevirdim. VPS yurtdışı lokasyon onda denedim beni yine tr'ye yönlendiriyor. Bunun çözümü varmıdır acaba ?
 

 

oguzhaner oguzhaner WM Aracı Kullanıcı
  • Üyelik 13.12.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Web/Desktop Coder
  • Konum İstanbul Avrupa
  • Ad Soyad O** E**
  • Mesajlar 210
  • Beğeniler 20 / 20
  • Ticaret 3, (%100)
Yukarıda altunoren'in verdiği örneği if-else yapısı ile gerçekleştirmeyi deneyebilirsiniz. Ülkelerin kodlarını birkaç değişkene atayın. Ardından
if($degisken_tr) {
header("Refresh: 0; url='index.php?dil=tr'");
} else {
header("Refresh: 0; url='index.php?dil=en'");
}

header komutu için session kullanmak gerekiyor mu bilmiyorum yalnızca ob_start() kullanımı yetiyor olabilir emin değilim bilenler bu konuya açıklık getirirse sevinirim. Benim aklıma direkt yukarıda verdiğim örnek aklıma geldi.
 

 

altunoren altunoren bilmenizgerek.com Kullanıcı
  • Üyelik 07.09.2013
  • Yaş/Cinsiyet 36 / E
  • Meslek Web Yazılım, Grafik Tasarım
  • Konum KKTC
  • Ad Soyad İ** A**
  • Mesajlar 356
  • Beğeniler 25 / 99
  • Ticaret 0, (%0)

XGames adlı üyeden alıntı

Hocam anladım dediğinizi fakat sitede şu anda 3 dil var fakat manuel olarak seçiliyor. Açılırken'de Türkçe olarak açılıyor. Fakat ben verdiğiniz kodları htaccess'e ekledim. Site dilini'de İngilizce'ye çevirdim. VPS yurtdışı lokasyon onda denedim beni yine tr'ye yönlendiriyor. Bunun çözümü varmıdır acaba ?



Bunu bir dene istersen. Büyük ihtimalle çalışacaktır. Kendine göre ayarla....



//echo $_SERVER['HTTP_ACCEPT_LANGUAGE'];

session_start();
header('Cache-control: private'); // IE 6 FIX

if(isset($_GET['dil']))
{

$lang = $_GET['dil'];

// register the session and set the cookie
$_SESSION['dil'] = $lang;

setcookie('dil', $lang, time() + (3600 * 24 * 30));
}
else if(isSet($_SESSION['dil']))
{
$lang = $_SESSION['dil'];
}
else if(isSet($_COOKIE['dil']))
{
$lang = $_COOKIE['dil'];
}
else
{
$diller = explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
$dil = explode(';',$diller[1]);
$lang = $dil[0];
}

switch ($lang) {
case 'en':
$dildosyasi = 'lang.en.php';
break;

case 'de':
$dildosyasi = 'lang.de.php';
break;

case 'es':
$dildosyasi = 'lang.es.php';
break;

default:
$dildosyasi = 'lang.tr.php';

}

echo $dildosyasi;

?>
 

 

wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al