Nginx kurulumundan bahsedeceğim. Kuruluma geçmeden önce Apache ile Nginx değinelim. Nginix de Apache gibi bir web sunucu yazılımıdır. İnternet ortamında bir çok tartışmalar var. Hangisi daha iyi, Nginx mi kullanalım yoksa Apache mi gibi bir sürü makaleler mevcut. Muhakkak aralarında bir fark vardır elbette. Örneğin Apache Nginxe göre biraz daha fazla rem ve cpu ihtiyacı oluyor. İyi konfigüre edilmiş bir sunucunuz varsa bu size o kadar çok yansımayacaktır; fakat çok üst düzey bir konfigürasyona sahip sunucunuz yoksa nginx tavsiye edilebilir. Şart mı kullanmak elbette şart değil. Şmkanınız varsa ikisinide bir denedikten sonra kullanmaya karar veriniz. Şimdi kuruluma geçelim
Nginx Kurulumu
Nginix kurulumunu yapabilmemiz için epel-release reposunu kurmamız gerekiyor.
[root@zulfumehmet ~]# yum install epel-release
Dosya düzenlemeleri için Nano editörünü kuralım.
[root@zulfumehmet ~]# yum install nano
Şimdi nginx kurulumuna geçelim.
[root@zulfumehmet ~]# yum install nginx
Kurulumu gerçekleştirdik şimdi server adımızı belirlemek için nginx.conf dosyasını düzenleyelim.
[root@zulfumehmet ~]# nano /etc/nginx/nginx.conf
server_name _;
Bu satırı şu şekilde değiştirelim
server_name sunucuya_vereceğiniz_ad;
Nginx çalıştıralım ve ardından herhangi bir sorun veyahut kurulum sonrası sunucuyu reboot ettiğimiz zaman otomatik açılmasını sağlayalım.
[root@zulfumehmet ~]# systemctl start nginx [root@zulfumehmet ~]# systemctl enable nginx
Kurulum bitti. Nginx miz çalışır vaziyete. Test etmek içip puplic ip adresimiz ile bir web browser aracılığı ile bağlanmaya çalışalım.
Yukarda da gördüğünüz gibi web browserden nginx sayfası bizi karşıladı. Daha sonra bize sorun olmaması için firewall devre dışı bırakalım eğer kullanacaksanız kullanacağınız portları eklemeniz gerekecektir.
[root@zulfumehmet ~]# systemctl stop firewalld [root@zulfumehmet ~]# systemctl disable firewalld
Nginx kurulumu bitti Nginx çalıştırdık reboot olduğunda kendiliğinden başlaması için başlangıca aldık. Firewall bize engel olmaması için firewall kapatık. Firewall kullanmak istiyorsanız kullanacağınız portları firewalla tanımlamanız gerekecektir diye not ta düştük. Burda işimiz bitti. Şimdi sıra geldi PHP uygulamalarımızı çalıştırabilmemiz içni PHP kurulumunu gerçekleştirmeye.
PHP-FHM Kurulumu ve Nginx’e PHP’nin Tanımlanması
PHP kurulumu için aşağıdaki komutu kullanalım.
[root@zulfumehmet ~]# yum install php php-mbstring php-pear php-fpm
Kurulum bittikten sonra php Apache uyumlu olarak geldiği için biz php Nginx ile çalışmasını söyleyeceğiz ve ona nginxde çalışmasını için ngix kullanıcısını ve gurubunu tanımlayacağız. Bunun için php-fpm’nin conf dosyasını düzenlemek için aşağıdaki komutu kullanalım.
[root@zulfumehmet ~]# nano /etc/php-fpm.d/www.conf
user = apache
; RPM: Keep a group allowed to write in log dir.
group = apache
Yukarda koyu olarak belirttiğim apache group ve user’ı nginx ile değiştireceğiz.
Apacheyi nginx yapalım
user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx
Kaydedip çıkalım. Çıktıktan sonra php çalıştıralım ve reboot durumlarından sonra otomatik çalışmasını sağlayalım.
[root@zulfumehmet ~]# systemctl start php-fpm [root@zulfumehmet ~]# systemctl enable php-fpm
Nginx e de php tanımlamak için nginx.conf dosyasını düzenleyelim.
[root@zulfumehmet ~]# nano /etc/nginx/nginx.conf
Server kısmına aşağıdaki komutları ekleyelim.
location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $ fastcgi_path_info; include fastcgi_params; }
Ardından nginx resetleyelim ve php info dosyası oluşturalım.
[root@zulfumehmet ~]# systemctl restart nginx.service [root@zulfumehmet ~]# echo "<?php phpinfo() ?>" > /usr/share/nginx/html/info.php
info.php dosyamız açıldı. Kurulu olan paketleri burdan kontrol edebilirsiniz. Nginx ile web sunucumuzu oluşturduk ardından php yazılımını kurduk artık bir dahaki makalemizde sizelere Mysql kurulumu ve veritabanımızı yönetebilmek için PhpMyAdmin kurulumundan bahsedeceğim.
Centos 7 Nginx, Php, MySQL, PhpMyAdmin, BindDNS, Host ve FTP Kurulum Yazı Dizisi
1 – Centos 7 Nginx Ve PHP Kurulumu
2 – Centos 7 Nginx İle MySQL ve PhpMyAdmin Kurulumu
3 – Centos 7 Nginx İle BindDNS, Host ve FTP Kurulumu
Hocam vmwarede bunu yapsak ne gibi bir sıkıntı oluşturur?
Bir sıkıntı oluşturmaz.