Bu rehber OSX yosemite icin kolayca Apache, MySQL, PHP & Virtual host kurulumu yapmaniz icin hazirlanmistir.
UYARI: Asagidaki rehber boyunca bilgisayarinizin dosya sistemine mudahale edeceksiniz. Eger ne yaptiginizi bilmiyorsaniz bu sizin bilgisayariniza zarar verebilir, veri kaybina zarar verebilir. Bu rehberi uygulamadan once Time Machine yedegi aldiginizdan emin olun.
Eger sisteminizde yoksa ilk is bu paketi kurarak basliyoruz.
xcode-select --install
Bu komut bilgisayariniza Xcode Command Line Tools indirip kuracak, bu pakete Homebrew kullanacagimiz icin ihtiyac duyuyoruz.
Sonraki asamaya gecmeden once xcode'u acarak kullanici kosullarini kabul etmeyi unutmayin!
Homebrew paket yoneticisi kurun, zaten yukluyse surum yukseltmesi yapin.
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew doctor
Bu adimi gizli sistem dosyalarini nasil degistireceginizi biliyorsaniz atlayabilirsiniz.
Sublime Text'in internet sitesine goz atin ve indirip kurun.
Daha sonra asagidaki komutu kullanin. Eger usr/local/bin
klasoru yoksa oncelikle bu klasoru mkdir
yardimiyla olusturun.
ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl
Bu komut istedigimiz dosyalari komut satirindan subl komutunu yazarak duzenleyebilmemizi saglayacak..
.dev domainlerin otomatik olarak olusturulmasi ve tanimlanmasi icin dnsmasq kullanacagiz. Asagidaki tum komutlari satir satir calistirin
brew install dnsmasq
cd $(brew --prefix)
mkdir etc
echo 'address=/.dev/127.0.0.1' > etc/dnsmasq.conf
sudo cp -v $(brew --prefix dnsmasq)/homebrew.mxcl.dnsmasq.plist /Library/LaunchDaemons
Daha sonra admin sifrenizi girin ve asagidaki komutlari girin.
sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.dnsmasq.plist
sudo mkdir /etc/resolver
sudo bash -c 'echo "nameserver 127.0.0.1" > /etc/resolver/dev'
/private/etc/apache2/httpd.conf dosyasini duzenleyin
subl /private/etc/apache2/httpd.conf
asagidaki satirlara giderek basindaki # isaretini silerek bu modullerin yorum olarak kalmasini kaldirin
# line 160
LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
# line 168
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
# line 169
LoadModule php5_module libexec/apache2/libphp5.so
# line 499
Include /private/etc/apache2/extra/httpd-vhosts.conf
Bu degisiklikleri gerceklestirdikten sonra 271. satira index.php ekleyin
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
Bu bolumde bir php.ini olusturup daha sonra duzenleyecegiz
sudo cp /private/etc/php.ini.default /private/etc/php.ini
subl /private/etc/php.ini
simdi 791. satirin basindaki noktali virgulu (;) silin, asagidaki gibi gorunmeli
upload_tmp_dir = /tmp
ayni islemi 1390. satir icinde uygulayin
session.save_path = "/tmp"
Bu bolumde bir web klasoru olusturacagiz bu klasor icine koydugumuz projeler localhost uzerinde ve ag ipniz uzerinde ulasilabilir olacak benim belirttigim klasorden farkli bir klasorde tutmak istiyorsaniz 5. bolumde kendinize gore degistirmeyi unutmayin.
oncelikle bir web klasoru olusturalim
mkdir ~/Web
daha sonra bunun icerisine bir klasor daha koyalim
mkdir ~/Web/_localhost
/private/etc/apache2/extra/httpd-vhosts.conf: dosyasini degistirin
subl /private/etc/apache2/extra/httpd-vhosts.conf
- satirdan sonraki herseyi silin ve YOURUSERNAME yazan yerleri kendi bilgisayar kullanici adiniz ile degistirin
<Directory "/Users/YOURUSERNAME/Web">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
<Virtualhost *:80>
VirtualDocumentRoot "/Users/YOURUSERNAME/Web/_localhost"
UseCanonicalName Off
</Virtualhost>
<Virtualhost *:80>
VirtualDocumentRoot "/Users/YOURUSERNAME/Web/%2"
ServerName sites.dev
ServerAlias www.*.dev
ServerAlias www.*.dev.*.xip.io
UseCanonicalName Off
</Virtualhost>
<Virtualhost *:80>
VirtualDocumentRoot "/Users/YOURUSERNAME/Web/%1"
ServerName sites.dev
ServerAlias *.dev
ServerAlias *.dev.*.xip.io
UseCanonicalName Off
</Virtualhost>
MySQL yukleyip ayarlarini yapacagiz. Asagidaki komutlari terminalinizde calistirin
brew install mysql
mysql.server restart
mysql_secure_installation
Son somut ile birlikte ekrandaki yonergeleri takip edin.
Daha sonra yeni bir veritabani olusturmak icin asagidaki komutu kullanabilirsiniz.
mysql.server stop
mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
OSX MySQL socketinin /var/mysql klasorunde olmasini bekleyecektir. Bunun icin bu dizini olusturup sembolik bir link olustracagiz.
sudo mkdir /var/mysql
sudo chmod 755 /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
Simdi mysql'i tekrar baslatalim
mysql.server start
MySQL'i sequelpro kullanabilirsiniz. Veya phpmyadmin kurabilirsiniz
#7 PHPMYADMIN
Mysql.sock icin sembolik link olusturun
sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
PHPMYADMIN kuralim
brew install josegonzalez/php/phpmyadmin
PHPMYADMIN'e erisebilmek icin vhost ayarlarimizi yapalim
sudo nano /etc/apache2/httpd.conf
Dokumani actiktan sonra en alta asagidaki vh ayarlarini yapistirin
Alias /phpmyadmin /usr/local/share/phpmyadmin
<Directory /usr/local/share/phpmyadmin/>
AllowOverride All
Options Indexes MultiViews FollowSymLinks
Require all granted
</Directory>
Apacheyi restart
sudo apachectl restart
Bu islemden sonra PHPMYADMIN kurulumunun yapilabilmesi icin config dosyasi olusturacagiz ve bu dizine yazma izini vereceiz buyuk harfle SURUM yazan yeri sizin phpmyadmin surumunuzle degistirip asagidaki iki komutu kullanin
mkdir/usr/local/Cellar/phpmyadmin/SURUM/share/phpmyadmin/config
chmod o+w /usr/local/Cellar/phpmyadmin/SURUM/share/phpmyadmin/config
BROWSER'dan acin -> http://localhost/phpmyadmin/setup/
MYSQL parolaniz daha once belirlediginiz parola olacak auth bolumunden serverinizi yapilandirabilirsiniz
BROWSER'dan giris yapin -> http://localhost/phpmyadmin/
#8. APACHE kullanicisini degistirme
Eger yetkilendirme ile ilgili sorunlar yasarsaniz veya yasamak istemiyorsaniz apache kullanicisini kendi kullanici adiniz ile degistirebilirsiniz.
181.
satirdaki su bolumde user karisina kendi kullanici adinizi yazarak kaydedin ve apacheyi yeniden baslatin.
<IfModule unixd_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User kullaniciadiniz
Group _www
#9. Mutlu Son Apache ve MYSQL'i bu sekilde yeniden baslatabilirsiniz
mysql.server start
sudo apachectl restart
bu sekilde durdurabilirsiniz
mysql.server start
sudo apachectl stop
Web klasorunde olusturdugunuz her site ~/Web/sitem
otomatik olarak .dev uzantisi ile kullanabilir olacak hem sitem.dev
hemde www.sitem.dev
adresinde
Localhostunuzdaki siteleri surekli olarak mobil cihazlarda test etmek zorunda kaliyor ve is arkadaslarinizin kendi bilgisayarinda bakmasi gerekebiliyor
sitem.dev.X.X.X.X.xip.io
xxx kismina bilgisayarinizin ip adresinizi yazacaksiniz. bu sekilde diger cihazlardan sitelerinizi sorunsuz goruntuleyebilirsiniz.
Eger ulkeniz sacma sapan bir yerse xip.io bloklaniyor olabilir. O zaman bilindik 8.8.8.8. google dns'i kullanarak kurtulmayi deneyin.
*Bu yazidaki tum bilgiler raureif'in suradaki yazisindandir *