Pardus’ta PDO_PGSQL ve PDO_MYSQL kurulumu

Drupal’ın geliştirilmekte olan 7.x sürümünün veritabanı sistemi PHP’nin PDO eklentisi kullanılarak yeniden yazıldı. Yeni sürümü denemek veya yama hazırlamak için PHP’nin PDO eklentisi ve PDO_PGSQL ve/veya PDO_MYSQL sürücüleri ile derlenmiş olması gerekiyor.

Pardus depolarındaki PHP paketleri bize bu desteği sağlamıyor. Bir süre önce Pardus’un hata takip sistemine durumu anlatan bir kayıt girmiştim. Umarım kısa zamanda ilgi görür.

Drupal 7.x sürümünü Pardus’a kurabilmek için PHP’yi kaynak kodlarından derlemek gerekiyor. Derlemeye hazırlanırken phpinfo() fonksiyonunun çıktısından Pardus’a özgü “configure” ayarlarını alıp bu ayarların en sonuna aşağıdaki iki ayarı ekleyin:

--with-pdo-pgsql=shared
--with-pdo-mysql=shared

Kurulum sırasında PHP “/etc/apache2/apache2.conf” dosyasının var olmasını gerektiriyor. Bu sorunu çözmek için aşağıdaki komut yeterli oluyor:

sudo ln /etc/apache2/httpd.conf /etc/apache2/apache2.conf

PHP derleme ve kurulum işlemi bittikten sonra “/etc/php/php.ini” dosyasını açıp “Dynamic Extensions” bölümünün altına aşağıdaki satırları ekleyin:

extension=pdo.so
extension=pdo_pgsql.so
extension=pdo_mysql.so

Hepsi bu kadar. Apache’yi yeniden başlattıktan sonra Drupal kurulumuna geçebilirsiniz.

Yeniden PHP

Uzun zamandır PHP kodu yazmamıştım. Bir süredir Python ile uğraşıyorum. Python’a alışan parmaklarım PHP’ye döndüğümde “$” işaretinin klavyedeki yerini bulmakta zorlandılar.

Gelelim PHP’ye neden ihtiyaç duyduğuma. “http://mustafau.com” adresine gelen bir kullanıcıyı tarayıcısının dil ayarlarına göre “http://gunluk.mustafau.com” (Türkçe) veya “http://blog.mustafau.com“a (İngilizce) yönlendirmek istiyorum. mustafau.com‘a yeni bir sunucu alanı almak istemediğim için ilk yönlendirmeyi “http://students.sabanciuniv.edu/~mustafau/r/redirect.php” adresine yapıyorum. Burada tarayıcının dil ayarlarına bakılıyor. Varsayılan ayarlarda “tr” (Türkçe) veya “az” (Azerice) var ise ziyaretçi gunluk.mustafau.com‘a yoksa blog.mustafau.com‘a yönlendiriliyor.

Şimdi de sıra betiği paylaşmaya geldi. Kodları aşağıya yazıyorum. Sıkıştırılmış dosya olarak indirmek isterseniz buyrun burada.

<?php

/**
* @version 1.0, redirect.php, 2007-02-28, 22:50
* @copyright (C)2007 Mustafa Ulu, All rights reserved. / Her hakkı saklıdır.
* @license GNU/GPL
* This is free software. / Bu özgür bir yazılımdır.
*/

// Tarayıcının varsayılan dillerini inceler, belirli dillere rastlar ise uygun
// yönlendirmeyi gerçekleştirir.
// EasyPHP 1.8 sürümü ile gelen 'index.php' dosyasından esinlenildi.

// tarayıcının varsayılan dillerini bir array içine al
$browser_languages = explode(",", getenv("HTTP_ACCEPT_LANGUAGE"));
$browser_languages_size = sizeof($browser_languages);

// İngilizce ve Türkçe dilleri için yönlendirme adresleri
$redirect_en = 'Location: http://blog.mustafau.com/';
$redirect_tr = 'Location: http://gunluk.mustafau.com/';

// varsayılan yönlendirme adresimiz İngilizce günlük
$redirect_str = $redirect_en;

for ($i = 0; $i < $browser_languages_size; $i++)
{
$lg = explode("-", $browser_languages[$i]);

if($lg[0] == 'tr' || $lg[0] == 'az') {
// 'tr' veya 'az' kodlarına rastlarsan Türkçe günlüğe yönlendir
$redirect_str = $redirect_tr;
break;
}
}

header($redirect_str);

?>