
Nginx php ikilisini bir sunucuda kurmak icin hazirladigim dokumani takip ederek centos sunucularda nginx ve php-fpm kurulumunu gerceklestirebilirsiniz.
Daha once 10 saniyede kurulum adiyla paylastigim “Centos Nginx + Php-fpm + mysql kurulumu (Sadece 10 saniye) – Panelsiz web sunucusu” konusuna giderek detayli ve mysql destekli sunucunuzu kurabilirsiniz.
Bu konuda anlatilacaklar:
- Nginx kurulumu
- Php-fpm kurulumu
- Online test
Baslamadan once Epel deposunun kurulmasi olusabilecek sorunlari ortadan kaldirabilir: Epel Deposu Ekleme – RHEL/CentOS 4/5/6/7
1 – Nginx ve php-fpm kurulumu
Sunucunuzda bulunan depo sayesinde kolayca iki programi kurabiliriz. Bunun icin asagidaki yum komutunu ssh terminalinden yazip enter yapin, kurulum tamamlandiktan sonra diger adima gecelim.
yum -y install nginx php-fpm
Kurulumdan sonra ki hata vermeyecektir, asagidaki komutlari sirasi ile girelim ve nginx php uygulamalarina restart atip yeniden baslatalim.
chkconfig nginx on service nginx restart service php-fpm restart
Bu islemlerden sonra sunucunun ip adresini yada ip adresine eklenen domaine girildiginde (DNS ile A eklemesine sunucunun IP adresini ekleyin) asagidaki ornek ekran cikacak:
Yani nginx php artik kurulmus oldu. Simdi bu yaptigimiz isi dahada guzellestirelim ve bir site tanimlayalim.
2 – Websitesi ekleme (domain)
Websitesi ekleme anlatiminda kullanacagim terimleri yaziyorum, sizler bu terimleri kendinize gore duzenleyerek sitenizi ekleyebilirsiniz..
Kullanici ismi ve grubu: nginx_php (siz bunu kendi sitenizin ismine yakin bir kelime ile kullanabilirsiniz. Ornegin makaleci.com domaini icin kuaza ismini kullanmak gibi)
Domain: http://nginx_php.makaleci.com (kisa bir sure online olacak, sonrasinda test sunucusunu iptal edecegim icin calismayabilir)
Kullanici/grup ekleme –
useradd nginx_php
Bu islemden sonra /home klasoru icerisinde nginx_php ismine bir klasor olusacak. Bu klasorun chmod ayarini ve kullanici/grup ayarlarini duzenlemek gerekli, aksi durumda yetki kontrolu sebebi ile sitemiz acilmayacak, hata mesaji ile karsilasacaksiniz.
Chmod ayarini degistirme –
chmod 0711 /home/nginx_php
Site dosyalari icin klasor olusturalim –
Sitenizin dosyalarini barindiracaginiz klasoru olusturacagiz simdi. Standart ve uzun yillardir default gelen ismi: public_html, ancak siz bunu istediginiz gibi degistirerek kullanabilirsiniz. Hemde guvenlik acisindan iyi olabilir ;)
mkdir -p /home/nginx_php/public_html
Site klasorunun kullanici/grup ayarlarini duzeltme –
chown -R nginx_php:nginx_php /home/nginx_php/public_html
Bu islemlerden sonra sitemizin dosyalari ve kullanici ayarlari yapilmis oldu. Son bir islem kaldi, oda Asil isi yapacak olan Nginx tarafinda sitemizin konfigurasyonunu yapmak. Oda sonraki bolumlerde..
3 – Nginx Site ekleme
Bu islemden sonra sitemiz acilir olacak. Tek yapmamiz gereken asagidaki adimlari izlemek..
Site konfigurasyon dosyasi olusturma –
ssh terminalinde calistigimiz icin nano programi ile dosya acip, ayarlarimizi kaydedip cikacagiz. nano programi yoksa kurun bi zahmet :)
nano /etc/nginx/conf.d/nginx_php.com.conf
Acilan ekrana asagidaki ayarlari kaydedelim. Ama oncesinde bir text dosyasinda gerekli alanlari duzeltin, sonrasinda terminal ekraninda duzeltmek biraz zamaninizi alabilir:
# # $site_ismi icin nginx konfigurasyon dosyasi # makaleci.com # server { listen 80; server_name nginx_php.makaleci.com; #charset koi8-r; #access_log logs/host.access.log main; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { root /home/nginx_php/public_html; index index.php index.html index.htm; try_files $uri @kuaza_rewrite; } #Statik dosyalari direk nginx ile isleyelim.. #baska dosyalarda ekleme ihtiyaci duyarsaniz asagidaki listeye dahil edebilirsiniz. location ~*.*\.(3gp|gif|jpg|jpeg|png|ico|wmv|avi|asf|asx|mpg|mpeg|mp4|pls|mp3|mid|wav|swf|flv|html|htm|txt|js|css|exe|zip|tar|rar|gz|tgz|bz2|uha|7z|doc|docx|xls|xlsx|pdf|iso)$ { # 1 Aylik cache suresi veririz. expires 1M; root /home/nginx_php/public_html; } # url rewrite ozelligi kismi # makaleci.com location @kuaza_rewrite { #rewrite ^/$ /index.php last; rewrite ^/index/([a-z0-9_-]*)/?$ /index.php?kuaza=\$1 last; } error_page 404 /404.html; location = /404.html { root /home/nginx_php/public_html; } # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /home/nginx_php/public_html; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { root /home/nginx_php/public_html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /home/nginx_php/public_html$fastcgi_script_name; include fastcgi_params; } }
Konfigurasyon dosyasinda degiseceginiz 2 yer var bunlardan birisi site dosyalarinin oldugu ana klasor ismi: nginx_php, digeride siteye ulasilacak domain ismi: http://nginx_php.makaleci.com
Bu islemden sonra ctrl + x | y + enter yaptiginizda ayarlari kaydedip dosyadan cikacaktir.
Nginx sunucusuna restart atarak ayarlarin aktif olmasini saglayalim:
service nginx restart
Ve artik sitemize ulasilabilir, ancak sitemizin klasorunde dosya yok :) Ben ornek dosyalar hazirladim, bunlari site klasorunun icine yuklediginizde sorunsuz sekilde acilacaktir.
Bir makalemin daha sonuna geldik. Nginx php kurulumunu anlatmaya calistim, umarim faydali olur sizler icin.
***
Uyarı: Sunucunuzdaki güvenlik duvarı (iptables) :80 portunu bloklamış yada açmamış olabilir. Bu yüzden bağlantı yapamayabilirsiniz. Manuel bu portu kullanıma açmak için aşağıdaki işlemleri yapın:
Iptables kural dosyasını açalım:
nano /etc/sysconfig/iptables
COMMIT yazısından öncesine ekleyelim:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
Sonrasında aşağıdaki işlemleri sırası ile yapın ve bağlantıyı tekrar deneyin:
service iptables save service iptables restart
Bu kadar..
Hocam şu DigitalOgean vps içine 1 veya daha fazla siteyi eklemeyi anlatsanız.
Tam olarak boyle bisey mi lazimdi ? : https://kuaza.com/ogretici-makaleler/digitalocean-vps-nginx-php-fpm-mysql-kurulumu-panelsiz
Eksik varsa soyleyin ona gore bi anlatim yaparim bos kaldigimda ;)
Vay bee. Tam başvuru kaynağı olmuş. Eline sağlık.