OSX İşletim Sistemine PHP, MySQL, Apache Kurulumu
Apple'ın OSX Mavericks işletim sistemi aslında Unix temelli hatta İntel işlemcili makineler için geliştirilmiş olan BSD - Unix İşletim sistemi açık kaynak kodları temel alınarak geliştirilmiştir. Tabi ki Free BSD - Unix'in kullanıcı arayüzü MacOSX veya OSX kadar görsel değildir, Apple birçok kütüphane ekleyerek ve görsel arayüzünü yeniden geliştirmiştir. Bugün birçok alanda da Free BSD Unix'in kullandığına şahit oluyoruz, Router'ların içindeki işletim sisteminden, Firewall'ların içindeki işletim sistemlerine kadar birçok donanım içindeki işletim sistemi Free BSD değiştirilerek oluşturulmuştur. Apple'ın Free BSD Unix'i seçmesinin nedeni de son derece sağlam ve güvenli bir alt yapıya sahip olmasındandır.
Burada verilecek komutlar aslında Unix temelli komutlar olacağından birçok Linux dağıtımı altındaki komutlarla da benzerlik göstermektedir.
Aslında hemen her Linux dağıtımının ve OSX içinde MySQL, PHP ve Apache üçlüsü gelmektedir, fakat aktif değildir, kullanıcı isterse kendisi aktif yapabilir, istemezse yapmaz. İhtiyacı olmayan neden PHP, MySQL, Apache'i aktif yapsın ki, isteyenin kullanıcının yapması daha doğru.
Bu arada PHP, MySQL, Apache üçlüsünü MAMP ya da XAMPP paketleri ile kurabilrsiniz, fakat bu paketleri kurduktan sonra PHP'nin veya MySQL'in sürüm güncellemeleri oldukça uğraştırıcı hale gelebiliyor.
Şimdi konumuza geçelim ve OSX işletim sisteminde Finder - Diğer - Terminal'den konsol ekranını açalım. Bilindiği gibi Windows'ta Administrator olmadan gelişmiş komutları yazamazsınız. Linux dağıtımlarının çoğunda da System User (Sistem Kullanıcısı) olmadan esaslı komutları veremezsiniz. System User kelimeleri kısaca su diye kısaltılır. Konsoldan sistemi ilgilendiren komutları vermek için de;
sudo su -
komutu verilir. Bu komutu verdikten sonra aşağıdaki ekran görüntüsünde görüldüğü gibi root kullanıcıda oturum açmış olacaksınız. Peki neden konsola girdiğimizde direkt root kullanıcı açılmıyor, cevabı basit, yetkisiz kullanıcıların önemli komutları vermemesi ve acemi kullanıcıların yanlışlıkla sistemi çökertmemeleri için.
Bu aşamadan sonra Apache, MySQL ve PHP'nin versiyonlarını aşağıdaki komutları vererek öğrenebilirsiniz.
Burada verilecek komutlar aslında Unix temelli komutlar olacağından birçok Linux dağıtımı altındaki komutlarla da benzerlik göstermektedir.
Aslında hemen her Linux dağıtımının ve OSX içinde MySQL, PHP ve Apache üçlüsü gelmektedir, fakat aktif değildir, kullanıcı isterse kendisi aktif yapabilir, istemezse yapmaz. İhtiyacı olmayan neden PHP, MySQL, Apache'i aktif yapsın ki, isteyenin kullanıcının yapması daha doğru.
Bu arada PHP, MySQL, Apache üçlüsünü MAMP ya da XAMPP paketleri ile kurabilrsiniz, fakat bu paketleri kurduktan sonra PHP'nin veya MySQL'in sürüm güncellemeleri oldukça uğraştırıcı hale gelebiliyor.
Şimdi konumuza geçelim ve OSX işletim sisteminde Finder - Diğer - Terminal'den konsol ekranını açalım. Bilindiği gibi Windows'ta Administrator olmadan gelişmiş komutları yazamazsınız. Linux dağıtımlarının çoğunda da System User (Sistem Kullanıcısı) olmadan esaslı komutları veremezsiniz. System User kelimeleri kısaca su diye kısaltılır. Konsoldan sistemi ilgilendiren komutları vermek için de;
sudo su -
komutu verilir. Bu komutu verdikten sonra aşağıdaki ekran görüntüsünde görüldüğü gibi root kullanıcıda oturum açmış olacaksınız. Peki neden konsola girdiğimizde direkt root kullanıcı açılmıyor, cevabı basit, yetkisiz kullanıcıların önemli komutları vermemesi ve acemi kullanıcıların yanlışlıkla sistemi çökertmemeleri için.
Bu aşamadan sonra Apache, MySQL ve PHP'nin versiyonlarını aşağıdaki komutları vererek öğrenebilirsiniz.
Apache versiyon öğrenme
apachectl -v
Örneğin yukarıdaki komutu verince aşağıdaki gibi bir görüntü alacaksınız ve sunucudaki Apache'nin 2.2.24 versiyonuna sahip olduğunu öğreneceksiniz.
Server version: Apache/2.2.24 (Unix)
Server built: Aug 24 2013 21:10:43
Bilgisayarınızda MySQL klasörünün nerede olduğunu bulmak için komutunu verebilirsiniz.
$find / -type f -name "mysql"
Örneğin bu arama sonucunda MySQL klasörünün benim bilgisayarımda aşağıdaki klasörde bulundu.
/usr/local/mysql-5.6.15-osx10.7-x86_64/bin/mysql
MySQL Version öğrenme
$find / -type f -name "mysql"
Örneğin bu arama sonucunda MySQL klasörünün benim bilgisayarımda aşağıdaki klasörde bulundu.
/usr/local/mysql-5.6.15-osx10.7-x86_64/bin/mysql
MySQL Version öğrenme
mysql -v
Bu komuttan sonra aşağıdaki gibi bir mesajla MySQL versiyonunu öğreneceksiniz.
Server version: 5.6.15 MySQL Community Server (GPL)
Bu komuttan sonra aşağıdaki gibi bir mesajla MySQL versiyonunu öğreneceksiniz.
Server version: 5.6.15 MySQL Community Server (GPL)
PHP Versiyon öğrenme
php -v
Bu komuttan sonra da aşağıdaki gibi bir mesaj ile PHP versiyonunu öğreneceksiniz, ben de 5.4.17 versiyonu varmış.
PHP 5.4.17 (cli) (built: Aug 25 2013 02:03:38)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
Şimdi PHP dosyalarının yorumlanabilmesi için ilk önce Apache web sunucusunu başlatmamız gerekiyor. apachectl komutu yanına farklı parametreler alarak bu işlemi yapmaktadır.
Apache web sunucusunu başlatmak için;
Eğer bilgisayarınızda apache web sunucusu zaten çalışıyorsa org.apache.httpd: Already loaded mesajı verecektir, yani zaten apache yüklü anlamında bir mesajdır.
Test için Safari, Chrome veya başka bir tarayıcıyı açıp adres kısmına;
http://localhost
yazın, aşağıdaki gibi bir pencere açılıyorsa, It works yani çalışıyor demektir.
Nano editörü tıpkı Windows içinde gelen Notepad gibi hem Linux hem de MacOSX ortamında çok kullanılan bir editördür. Komut satırında nano yazdıktan sonra editörün açmasını istediğiniz dosyayı yazabilirsiniz. Nano yoksa vi editöründe de açabilirsiniz, ama ben şahsen vi editörünü alışmadığım kısayollarından dolayı sevmiyorum. Yani kısaca;
Bu dosyayı açtıktan sonra Ara-Bul'dan php kelimesini arattırıp, php kütüphanesini yükleyen satırı bulmamız gerekli. Nano editöründe Kontrol + W tuşu ile Search yani arama satırı açılacaktır. php yazıp Enter'a bastığınızda php geçen satırlar bulunacaktır. Nano editörü içinde Yukarı - Aşağı yön tuşları ile hareket edebilirsiniz. Aşağıdakine benzer bir satır göreceksiniz.
# LoadModule php5_module libexec/apache2/libphp5.so)
Bu satırın önündeki # işaretini kaldırıp, Kontrol + X tuşuna basınız ve gelen soru için Y yani Yes tuşuna basıp Enter'a basınız.
Tekrar apache web sunucusunu apachectl restart diyerek başlatınız.
OSX işletim Sisteminden Uygulama veya Program Kaldırmak
NOT: Bilgisayarınıza yüklediğiniz XAMPP gibi bir uygulama varsa kaldırmak için aşağıdaki komutu verebilirsiniz. Burada rm komutunu kullanarak Uygulamalar(Applications) klasöründeki xammp uygulamasını kaldırıyoruz.
sudo rm -rf /Applications/xampp
Örneğin MySQL'i tamamen kaldırmak isterseniz aşağıdaki komutu yazmanız gerekir.
sudo rm -rf /usr/local/mysql-5.6.15-osx10.7-x86_64
OSX İşletim Sistemine sıfırdan MySQL Kurmak
1) Aşağıdaki adrese girip MacOSX için, tabi siz hangi versiyonu kullanıyorsanız ona göre MySQL
sürümünü indirebilirsiniz. MacOSX için DMG uzantılı dosyalar kurulum dosyalarıdır. Benim indirdiğim MySQL 5.6.20 şu an 160 MB büyüklüğünde bir kurulum dosyası, kurulduğunda 670 MB civarı bir yer kaplıyor.
MySQL İndirme Linki
http://dev.mysql.com/downloads/mysql/
2) DMG uzantılı dosya indikten sonra üstüne çift tıklayınız. Eğer MySQL düzgün kurulduysa /usr/local/mysql-kurulan-versiyon şeklinde bir klasör göreceksiniz. Normalde MySQL DMG paketini kurduğunuzda içinde MySQL Startup Item gelir ve MySQL bilgisayarınızı başlattığınızda otomatik başlar. MySQL'in bilgisayarınızı başlattığınızda otomatik olarak başlayıp başlamayacağını kontrol etmek için /etc/hostconfig dosyasına cat komutu ile bakın, eğer içinde MYSQLCOM=-YES- yazıyorsa otomatik başlayacaktır, MYSQLCOM=-NO- ise başlamayacaktır.
MySQL'in sistemde kurulup kurulmadığını kontrol etmenin diğer bir yolu LaunchPad - Sistem Tercihleri menüsünden gelen pencerede aşağıdaki gibi MySQL logosunu göreceksiniz, üzerine tıkladığınızda çalışıyorsa MySQL etkindir.
1) Önce nano /etc/apache2/httpd.conf dosyasını nano editörü ile açıyoruz.
2) Bu dosyada aşağıdaki satırı bulup önünde # işareti varsa kaldırıyoruz.
Include /private/etc/apache2/extra/httpd-vhosts.conf
nano httpd-vhosts.conf
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Users/akaremac/Documents/workspace/dev"
ServerName akaremac.local
ErrorLog "/private/var/log/apache2/akaremac.local-error_log"
CustomLog "/private/var/log/apache2/akaremac.local-access_log" common
<Directory "/Users/akaremac/Documents/workspace/dev">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Bu sanalhost ayarından sonra apachectl restart komutu ile Apache web sunucumuzu yeniden başatıyoruz. Ayrıca aşağıdaki komutla DNS belleğini de temizliyoruz.
TEST AŞAMASI
Hemen bir php uzantılı, örneğin index.php dosyası hazırlayıp içine de aşağıdaki kodları yazabilirsiniz.
<?php phpinfo(); ?>
Kaydedeceğimiz yer, Library/WebServer/Documents klasörüdür. Türkçe OSX'de ise, Kitaplık/WebServer/Documents klasörüdür. Ekran görüntüsü aşağıdadır.
Sonra http://akaremac.local/index.php linkini tarayıcıda yazarak test edebilirsiniz.
İyi günler...
KAYNAKLAR
1) MacOSX'e MySQL Kurmak
http://dev.mysql.com/doc/refman/5.0/en/macosx-installation.html
2) MySQL İndirme Linki (Tüm Platformlar)
http://dev.mysql.com/downloads/mysql/
3) MacOSX MySQL, PHP, Apache Ayarları
http://jason.pureconcepts.net/2012/10/install-apache-php-mysql-mac-os-x/
4) Install MySQL on MacOSX
http://abbeyworkshop.com/howto/osx/osxMysqlInstall/index.html
Bu komuttan sonra da aşağıdaki gibi bir mesaj ile PHP versiyonunu öğreneceksiniz, ben de 5.4.17 versiyonu varmış.
PHP 5.4.17 (cli) (built: Aug 25 2013 02:03:38)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
Şimdi PHP dosyalarının yorumlanabilmesi için ilk önce Apache web sunucusunu başlatmamız gerekiyor. apachectl komutu yanına farklı parametreler alarak bu işlemi yapmaktadır.
Apache web sunucusunu başlatmak için;
apachectl start
Apache web sunucusunu tekrar başlatmak için;
Apache web sunucusunu tekrar başlatmak için;
apachectl restart
Apache web sunucusunu durdurmak için;
Apache web sunucusunu durdurmak için;
apachectl stop
Eğer bilgisayarınızda apache web sunucusu zaten çalışıyorsa org.apache.httpd: Already loaded mesajı verecektir, yani zaten apache yüklü anlamında bir mesajdır.
Test için Safari, Chrome veya başka bir tarayıcıyı açıp adres kısmına;
http://localhost
yazın, aşağıdaki gibi bir pencere açılıyorsa, It works yani çalışıyor demektir.
Nano editörü tıpkı Windows içinde gelen Notepad gibi hem Linux hem de MacOSX ortamında çok kullanılan bir editördür. Komut satırında nano yazdıktan sonra editörün açmasını istediğiniz dosyayı yazabilirsiniz. Nano yoksa vi editöründe de açabilirsiniz, ama ben şahsen vi editörünü alışmadığım kısayollarından dolayı sevmiyorum. Yani kısaca;
nano /etc/apache2/httpd.conf
Bu dosyayı açtıktan sonra Ara-Bul'dan php kelimesini arattırıp, php kütüphanesini yükleyen satırı bulmamız gerekli. Nano editöründe Kontrol + W tuşu ile Search yani arama satırı açılacaktır. php yazıp Enter'a bastığınızda php geçen satırlar bulunacaktır. Nano editörü içinde Yukarı - Aşağı yön tuşları ile hareket edebilirsiniz. Aşağıdakine benzer bir satır göreceksiniz.
# LoadModule php5_module libexec/apache2/libphp5.so)
Bu satırın önündeki # işaretini kaldırıp, Kontrol + X tuşuna basınız ve gelen soru için Y yani Yes tuşuna basıp Enter'a basınız.
Tekrar apache web sunucusunu apachectl restart diyerek başlatınız.
OSX işletim Sisteminden Uygulama veya Program Kaldırmak
NOT: Bilgisayarınıza yüklediğiniz XAMPP gibi bir uygulama varsa kaldırmak için aşağıdaki komutu verebilirsiniz. Burada rm komutunu kullanarak Uygulamalar(Applications) klasöründeki xammp uygulamasını kaldırıyoruz.
sudo rm -rf /Applications/xampp
Örneğin MySQL'i tamamen kaldırmak isterseniz aşağıdaki komutu yazmanız gerekir.
sudo rm -rf /usr/local/mysql-5.6.15-osx10.7-x86_64
OSX İşletim Sistemine sıfırdan MySQL Kurmak
1) Aşağıdaki adrese girip MacOSX için, tabi siz hangi versiyonu kullanıyorsanız ona göre MySQL
sürümünü indirebilirsiniz. MacOSX için DMG uzantılı dosyalar kurulum dosyalarıdır. Benim indirdiğim MySQL 5.6.20 şu an 160 MB büyüklüğünde bir kurulum dosyası, kurulduğunda 670 MB civarı bir yer kaplıyor.
MySQL İndirme Linki
http://dev.mysql.com/downloads/mysql/
2) DMG uzantılı dosya indikten sonra üstüne çift tıklayınız. Eğer MySQL düzgün kurulduysa /usr/local/mysql-kurulan-versiyon şeklinde bir klasör göreceksiniz. Normalde MySQL DMG paketini kurduğunuzda içinde MySQL Startup Item gelir ve MySQL bilgisayarınızı başlattığınızda otomatik başlar. MySQL'in bilgisayarınızı başlattığınızda otomatik olarak başlayıp başlamayacağını kontrol etmek için /etc/hostconfig dosyasına cat komutu ile bakın, eğer içinde MYSQLCOM=-YES- yazıyorsa otomatik başlayacaktır, MYSQLCOM=-NO- ise başlamayacaktır.
MySQL'in sistemde kurulup kurulmadığını kontrol etmenin diğer bir yolu LaunchPad - Sistem Tercihleri menüsünden gelen pencerede aşağıdaki gibi MySQL logosunu göreceksiniz, üzerine tıkladığınızda çalışıyorsa MySQL etkindir.
vi /etc/apache2/extra/httpd-vhosts.conf
Bu işlemlerden sonra gelelim PHP'nin ayarlarına, aslında oldukça basit.1) Önce nano /etc/apache2/httpd.conf dosyasını nano editörü ile açıyoruz.
2) Bu dosyada aşağıdaki satırı bulup önünde # işareti varsa kaldırıyoruz.
Include /private/etc/apache2/extra/httpd-vhosts.conf
etc/apache2/extra/
3) /etc/apache/extra klasörüne girip aşağıdaki dosyayı açıyoruz.nano httpd-vhosts.conf
vi /etc/apache2/extra/httpd-vhosts.conf
İçini aşağıdaki şekilde değiştiriyoruz. Benim bilgisayarımın adı akaremac, siz kendinize göre değiştirebilirsiniz.<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Users/akaremac/Documents/workspace/dev"
ServerName akaremac.local
ErrorLog "/private/var/log/apache2/akaremac.local-error_log"
CustomLog "/private/var/log/apache2/akaremac.local-access_log" common
<Directory "/Users/akaremac/Documents/workspace/dev">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Bu sanalhost ayarından sonra apachectl restart komutu ile Apache web sunucumuzu yeniden başatıyoruz. Ayrıca aşağıdaki komutla DNS belleğini de temizliyoruz.
dscacheutil -flushcache
dscacheutil -flushcacheTEST AŞAMASI
Hemen bir php uzantılı, örneğin index.php dosyası hazırlayıp içine de aşağıdaki kodları yazabilirsiniz.
<?php phpinfo(); ?>
Kaydedeceğimiz yer, Library/WebServer/Documents klasörüdür. Türkçe OSX'de ise, Kitaplık/WebServer/Documents klasörüdür. Ekran görüntüsü aşağıdadır.
Sonra http://akaremac.local/index.php linkini tarayıcıda yazarak test edebilirsiniz.
İyi günler...
KAYNAKLAR
1) MacOSX'e MySQL Kurmak
http://dev.mysql.com/doc/refman/5.0/en/macosx-installation.html
2) MySQL İndirme Linki (Tüm Platformlar)
http://dev.mysql.com/downloads/mysql/
3) MacOSX MySQL, PHP, Apache Ayarları
http://jason.pureconcepts.net/2012/10/install-apache-php-mysql-mac-os-x/
4) Install MySQL on MacOSX
http://abbeyworkshop.com/howto/osx/osxMysqlInstall/index.html
Dil Değiştir(Change Language)
Kategoriler
- Csharp(58)
- Csharp Formlar(23)
- Web Tasarım(9)
- CSS(27)
- JavaScript(37)
- PHP(50)
- Laravel(3)
- ASP.net(38)
- Excel(15)
- Güvenlik(4)
- E-Ticaret(3)
- Kariyer(5)
- SQL Server(29)
- MySQL(16)
- Linux(17)
- MacOSX(8)
- Ayarlar(12)
- Bilgisayar Ağları(3)
- Symfony(1)
- Teknoloji(7)
- VBS(1)
- Arduino(6)
- RaspberryPi(1)
- Algoritmalar(15)
- HTML(3)
- Python(2)
- Bash Script(7)
- C Programlama(10)
- Flutter - Dart(11)
- Bootstrap(1)
En çok Okunan 18 Makale
- :: Excelde EĞER Fonksiyonu Kullanımı...
- :: Csharp ile Access Veritabanı Bağlan...
- :: SQL nedir, Temel SQL Komutları nele...
- :: Hangi Linux Dağıtımı?
- :: OSX İşletim Sistemine PHP, MySQL, A...
- :: PHP dilini kullanarak MySQLi tekniğ...
- :: Excel Hesap tablosunda EĞERSAY Fonk...
- :: Excel Hesap tablosunda ÇOKETOPLA Fo...
- :: Excel Hesap tablosunda ETOPLA Fonks...
- :: Excel Hesap tablosunda ÇOKEĞERSAY F...
- :: Hangi Programlama Dilini Öğrenmeliy...
- :: Mac Bilgisayarınıza Windows 7 Yükle...
- :: PHP ile Basit Dosya Yükleme
- :: C# Programlama Dili ile İlgili Örne...
- :: PHP Dili kullanarak MySQLi Tekniği ...
- :: Excel hücrelerinde yıldız koyarak b...
- :: PhpMyAdmin Şifresi Nasıl Değiştiril...
- :: Hangisi acaba, PHP mi ASP.NET mi ?