Mehmet Fatih YILDIZ (mfyz.com)

Menü



Ubuntu'da Apache, Php, MySQL ve PHPMyAdmin kurulumu (LAMP)

Kategori : PHP ve Pear Dökümanları
Eklenme Tarihi :
25 Eylül Pazartesi ´06
lamp, ubunt, php, apache, kurulum




Dikkat : Dökümanın yazılma tarihi üzerinden en az 60 gün (2 ay) geçmiş. İçerisindeki bilgiler güncelliğini yitirmiş olabilir, uygulamada ufak sorunlar oluşabilir. Yorumları ve güncellemeleri göz önünde bulundurarak dökümanı takip ediniz.


Bildiğiniz gibi ubuntu debian tabanlı bir işletim sistemi ve apt denilen kesinlikle gördüğüm en mükemmel paket yöneticisi olan bir araca sahiptir. Apt denilen şey sayesinde internetteki çok fazla depodan istemeyeceğiniz kadar pakete karın ağrısız ulaşabilmenizi sağlıyor. Bu aygıtı kullanıp harikalar yaratacağız şimdi.

Başlamadan önce paket bilgimizi güncelleyelim;

  1. sudo aptitude update

İlk olarak normal web yayını yapacak olan Apache'yi kuralım;

  1. sudo aptitude install apache2

komutu ile apache2 ve buna ilişkin paketleri kurun.

Öneri olarak apache'nin varsayılan web yayın klasörünü kullanmayın, benim / dizinimde mfyz adında bütün kişisel dosyalarımı sakladığım bir merkez vardır (hatta ayrı disk bölümü şeklinde kullanırım). Bu dizin içerisinde kendime "www" adında bir dizin oluşturup burayı apache'nin ana yayın dizini olarak ayarlayacağım :

  1. sudo vim /etc/apache2/sites-enabled/000-default

komutu ile (veya nano ile açabilirsiniz) geçerli yayınlanan domainlere ilişkin bilgilerin tutulduğu dosyayı açalım. Burada varolan yayındaki site ayarları göreceğiz,

"/var/www" gördüğümüz 2 yeri değiştiriyoruz, "/mfyz/www" şeklinde ayarladıktan sonra yine önereceğim;
Options Indexes FollowSymLinks MultiViews

satırındaki Indexes kısmını kaldırıyoruz. Bunu yapmamızdaki amaç şudur : Apache eğer bunu yapmazsanız içerisinde index dosyası bulmadığı dizinleri basit bir yapıda listeleyecektir. Bunu kapatmak için burada bulunan "Indexes" kısmını kaldırıyoruz. Artık index olmayan bir dizine bakılmaya çalışıldığında Forbidden hatası verecektir. Dosyayı kaydedip çıkıyoruz.

Web sunucusu ve modüllerine ilişkin yaptığımız her değişimde apache servisini yeniden başlatmamız gerekmektedir. Çünkü her başlangıçta o andaki ayar dosyaları hafızaya alınır ve oradan çlaışır servisler, Yeni ayarları uygulamak için :
sudo apache2ctl restart

veya
sudo /etc/init.d/apache2 restart

komutlarından birini veriyoruz (ikisi de aynı işi yapar).

Şimdi bir web tarayıcısı açıp http://localhost yazdığımızda Forbidden hatası alıyorsak apache servisimiz sorunsuz çalışıyor demektir. Eğer /mfyz/www klasörüne bir index.html dosyası koyarsak görünmesi gerekir aynı zamanda.

Şimdi php yükleyip apache ile entegre edelim :

İsterseniz 4 olan yerleri 5 yaparak php5 kurabilirsiniz. Bu örnekte php4 kuracağım.

  1. sudo aptitude install php4 libapache2-mod-php4 php4-gd php4-mysql

komutu ile php4, mod-php4, php'ye gd kütüphanesi desteği ve mysql ile entegre çalışabilmesi için php4-mysql paketlerini kurmuş oluyoruz.
Kurulumdan sonra php ayarlarımızı yapmak için:

  1. sudo vim /etc/php4/apache2/php.ini

komutu ile php.ini dosyamızı açıyoruz. Burada önerdiğim birkaç ayarı yapalım :
upload_max_filesize = 2M

satırını 20M şeklinde düzenleyerek en fazla 20mb upload yapılabilir hale getirelim. Bu değişim, büyük veritabanlarını phpmyadmin'e import ederken işimize yarayacak.
;default_charset = "iso-8859-1"

satırını buluyoruz ve başındaki ; işaretini kaldırıyoruz (uncomment). Daha sonra utf-8 (veya iso-8859-9) olarak ayarlıyoruz.

[Extensions] kısmında varolan ;
;extension=mysql.so
;extension=gd.so

satırlarının başındaki ; işaretlerini kaldırdıktan sonra kaydedip çıkıyoruz. Böylece Türkçe sorunu yaşamadan en fazla 20mb upload edebilir ve mysql/gd destekli bir php desteğine sahip apache edinmiş oluyoruz.

Eğer register_globals kullanıyorsanız bunu açmanız gerekecektir. Varsayılan olarak Off ayarlı olacaktır.

Not : Yukarıdaki ayarlar dışındakilere dokunmayın, hepsi varsayılan olarak gayet ideal ayarlanmıştır.

Şimdi apache'yi yeniden başlatıp deneme yapalım.

  1. vim /mfyz/www/index.php

komutu ile index.php oluşturalım ve içine

  1. <?php
  2. ?>

yazıp kaydedip çıkalım. Şimdi bir web tarayıcısı açıp http://localhost adresine girin, PHP hakkında çok detaylı bir sayfa görüyorsanız tebrikler şu an php apache sorunsuz çalışıyor. Bu sayfada başlıklara bakarak aşağıya doğru süzülün, gözünüz "mysql" ve "session" başlıklarını görüyorsa devam edebiliriz.

Şimdi MySQL kuralım;

  1. sudo aptitude install mysql-client-4.1 mysql-server-4.1

komutu ile mysql sunucumuzu ve istemcimizi kurmuş oluyoruz. Şimdi mysql root şifresi ayarını geçiyorum çünkü bunu phpmyadmin'den yapacağız. Varsayılan olarak root şifresizdir.

Apache'yi tekrar başlatıyoruz tabiki.

Sıra geldi phpmyadmin kurulumuna

Apt ile kurmanızı önermem çünkü phpmyadmin'i sürekli güncellemeyeceğiz hatta kodda kendimize göre değişiklikler yapacağız.
Otomatik kurmak isteyenler ;

  1. sudo aptitude install phpmyadmin

Elle kurmak isteyenler: http://www.phpmyadmin.net adresine girip son sürüm paketi indirin.
/mfyz/www klasörüne "pma" adında açalım (isteyen phpmyadmin olarak da adlandırabilir klasörü, ben böyle daha pratik olduğunu düşünüyorum).

Şimdi ayar dosyasına dokunmadan http://localhost/pma adresine giriyoruz. PhpMyAdmin gayet normal bir şekilde açılıyor karşımıza. Şimdi hiç bi yere tıklamadan anasayfadaki "Privilages" linkine tıklıyoruz (Türkçesinde izinler olarak geçebilir). Burada MySQL kullanıcıları listelenecektir. root'a tıklayıp düzenlenme sayfasındaki şifre kısmında 2 kez girerek formu gönderin. Sayfayı yenileyin, yani http://localhost/pma adresine tekrar girmeye çalışın. Eğer erişim hatası veriyorsa root şifreniz değişmiştir. Şimdi /mfyz/www/pma/libraries dizinindeki config.default.inc.php dosyasını düzenleyerek root şifrenizi ayarlayın. Tekrar http://localhost/pma sayfasına girmeyi deneyin. Eğer giriyorsa artık apache php mysql phpymadmin'iniz sorunsuz kullanılabilir demektir. /mfyz/www klasöründe çalışabilirsiniz. MySQL veritabanı yönetimini A'dan Z'ye phpymadmin ile yapabilirsiniz, Sadece biraz kurcalayın göreceksiniz :-)

Not : Benzer komutlar ile debian ve debian türevi tüm işletim sistemlerinde bu dörtlüyü kolayca kurabilirsiniz.


Hazırlayan : Mehmet Fatih YILDIZ


Yorumlar (13 yorum/ping var)



Üye Resmi Ziyaretçi : keretta
17 Temmuz Perşembe ´08 02:34 tarihinde yazmış
Merhaba bu adresten kurulumu yaptım ama tr karakter sorunu verince kaldırdım tüm paketleri neyse tekrar kurdum apache'yi sağlıklı kuruyorum fakat php5 kurduktan sonra /etc/php5/apache2/ içerisinde oluşması gereken php.ini dosyası oluşmuyor.

Ne yapmam gerekiyo. Bu arada konsolda hata tarzında bir yazı var php.ini ile ilgili onu buraya koyayım belki yardımcı olmanıza yardımcı olur   :-)

Not replacing deleted config file /etc/php5/apache2/php.ini
 


Üye Resmi Üye : mfyz
17 Temmuz Perşembe ´08 11:14 tarihinde yazmış
Evet sanırım elle silmişsin o php.ini dosyasını.

paketi kaldırırken
apt-get --purge remove gnome-panel
kullanmalıydın, neyse

dpgk --reconfigure php apache2
komutu sanırım bu iki paketi yeniden yapılandırarak bu sorununu çözecektir (not komut ve parametreleri tam hatırlamayabilirim)
 


Üye Resmi Ziyaretçi : keretta
17 Temmuz Perşembe ´08 21:59 tarihinde yazmış
Yok hocam olmuyor. kaldırdıktan sonra zaten bir işe yaramıyor yükleyince de şöyle diyor ve yine oluşmuyor php.ini. manuel olarak php.ini'i kopyaladım dizine yine bir işe yaramadım. kaç gündür bu problem. şuan php5 ve apache2 de yüklü.

root@keretta-desktop:/home/keretta&#35; sudo dpkg --configure php5 apache2
dpkg: error processing php5 (--configure):
 paket php5 zaten yüklü ve ayarlanmış
dpkg: error processing apache2 (--configure):
 paket apache2 zaten yüklü ve ayarlanmış
Errors were encountered while processing:
 php5
 apache2
 


Üye Resmi Ziyaretçi : Osman
27 Ağustos Çarşamba ´08 14:24 tarihinde yazmış
Şu anda bu işlemin
sudo tasksel install lamp-server komutuyla kolayca yapılabildiğini söylemek gerekiyor
 


Üye Resmi Üye : mfyz
28 Ağustos Perşembe ´08 23:16 tarihinde yazmış
hmm. lamp-server paketi mi olmuş artık. Eskiden yoktu öyle birşey   :-)
 


Üye Resmi Ziyaretçi : ferdi kucuk
10 Ekim Cuma ´08 23:08 tarihinde yazmış
emegine saglik nhocam guzel olmus
 


Üye Resmi Ziyaretçi : Mustafa
5 Mayıs Salı ´09 21:50 tarihinde yazmış
Linux üstünde apache php mysql kurulumunu anlatan bir kısa makale de ben yazdım. Belki alternatif arayanlar için faydalı olabilir.

http://cookingthecode.com/a21_Php-Mysql-Apache-Lamp-Kurulumu
 


Üye Resmi Ziyaretçi : Kadem
8 Haziran Pazartesi ´09 15:41 tarihinde yazmış
Yukarıda anlattığınız gibi tüm işlemleri yaptım. mysql 5.1 ile php 5 yükledim farklı olarak. kendi dizinimi açtım /ghn/www/  olarak. fakat browser a localhost yazdığımda forbidden uyarısı alıyorum. Buraya boş bir index.html koydum öyle de denedim. index.php koyup yine denedim. Hep aynı uyarıyı alıyorum. phpmyadmin i attım /ghn/www/pma olarak ama bunu da açamıyorum yine forbidden diyor.

ne yapmalıyım? sorun nerede olabilir.?
 


Üye Resmi Ziyaretçi : Kadem
8 Haziran Pazartesi ´09 16:43 tarihinde yazmış
Az önce karşılaştığım sorunu çözdüm. Şu an phpmyadmin sıkıntım kaldı sadece. http://localhost/pma yazınca aşağıdaki uyarıyı alıyorum.

Cannot load mysql extension. Please check your PHP configuration. - Documentation

çözüm önerisi şu şekilde belirtiliş;

To connect to a MySQL server, PHP needs a set of MySQL functions called \"MySQL extension\". This extension may be part of the PHP distribution (compiled-in), otherwise it needs to be loaded dynamically. Its name is probably mysql.so or php_mysql.dll. phpMyAdmin tried to load the extension but failed.

Usually, the problem is solved by installing a software package called \"PHP-MySQL\" or something similar.

mysql.so nun önündeki comment i de kaldırmıştım zaten ama olmadı hala.

phpMyAdmin ayar dosyasını oluşturdum fakat yine hata mesajları aldığım için sildim.
 


Üye Resmi Üye : the_nobody
8 Haziran Pazartesi ´09 16:55 tarihinde yazmış
xampp kurmayı dene istersen.. Ayrı ayrı kurmaktan daha basittir.. Herhangi bir sorunla karşılaşacağını da zannetmiyorum..
 


Üye Resmi Ziyaretçi : Kadem
10 Haziran Çarşamba ´09 17:49 tarihinde yazmış
@the_nobody,
teşekkürler. onu kursam daha iyi olacak sanırım.
 


Üye Resmi Ziyaretçi : mustafa
2 Mart Salı ´10 08:35 tarihinde yazmış
hocam paylaşımın için teşekkürler

bir de ubuntuda odbc connection yapmayı anlatmanız münkün mü
 


Üye Resmi Ziyaretçi : hakan soydogan
19 Mart Cuma ´10 14:35 tarihinde yazmış
benımde bır sorum olucak ben apache yı calıstırdım fakat localden yanı makınının adresını gırınce sayfam acılıyo ancak wan ıp mı yazdıgımda sayfa hıc bır sekılde gelmıyo yanı 80 den gıremıyorum sıteye ne yapmam lazım

sımdıden tesekkurler
 


Yeni Yorum

Önce Okuyun Yorumlarınızda sosyal, dini ve politik taraflı mesajlar, başkalarına saldırı sayılabilecek laflardan kaçının. Argo kelimeler, küfürler otomatik olarak silinecektir. Bu kural ihlalleri ip, üyelik, isiminizin banlanmasına yol açabilir.

Lütfen yardıma yönelik, konuyu uzatacak sorularınızı/yorumlarınızı forumda yazınız. Burası konu dahilindeki kısa soluklu öneri/yorumlar içindir. Aksi halde yorumunuzu göremeyebilir, uyarı alabilirsiniz.

Hatırlatmak amacıyla : html kodlarının, link yapmak, vb amacıyla gireceğiniz ekstra bilimum şeylerin çalışmayacağını belirteyim. Yorumlayıcı zaten linklerinizi otomatik çevirecek, gülücüklerinizi dönüştürecektir. Zengin metin özellikleri için araç çubuğundaki butonları kullanın.


İletişim Bilgileri


E-Posta adresiniz gösterilmeyecektir.

(unut)

Üye iseniz, giriş yapıp bu bilgileri girmeden hızlıca yorum yapabilirsiniz. Yorumunuzda resminiz/ikonunuz ve profil bağlantınız görüntülenecek, aynı zamanda güvenlik kodu girmek zorunda da kalmayacaksınız.
Üye olmak için buraya tıklayın.

Güvenlik Kodu
Güvenlik kodunu göremiyorsanız sayfayı yenileyin!


Yukarıdaki güvenlik kodunu bu kutuya yazın.

Yorum   
- +

Ad soyad, eposta ve yorum alanları
(⊗ işaretli alanlar) zorunludur.





mfyz.com'da şu an 11 ziyaretçi geziniyor. Toplam 114 makale, 202 yazı, 2938 gönderi var



  • RSS mfyz.com'u RSS beslemeleri ile takip edebilirsiniz
  • ServerTR Hosting Sponsoru ServerTR.com'a çok teşekkür ederiz
  • CC 2.5 Sitedeki materyalleri Creative Commons 2.5 Lisansı çerçevesinde kullanabilirsiniz. Lisans hakkında bilgi almak için tıklayın
  • İstatistikler Site ziyaret istatistikleri, konu, eğilim gibi ilginç istatistikler hakkında
  • Site Hakkında Site altyapısı, hazırlanışı, kurallar ve felsefesi hakkında
  • İletişim İletişim formu, iletişim bilgileri

mfyz.com Türk Programcılığının Gelişmesine Adanmıştır
HTML Standartlarına Uygundur

CSS Standartlarına Uygundur