Nginx Kurulumu
Centos 7 üzerinde Nginx Kurulumu.
Nginx hakkında edebiyat yapmaya gerek yok bilen biliyor zaten :)
Apache, Litespeed ve diğer web sunucularına göre daha düşük kaynaklar ile büyük işler başarabilirsiniz.
Nginx kurulumu için gerekli repoyu sunucumuzda oluşturalım ve Nginx'in kararlı olan en son sürümünü kuralım.
sudo nano /etc/yum.repos.d/nginx.repo
Aşağıdaki parametreleri üstte nano ile açtığımız dosyaya ekleyip kaydedelim.
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
Sunucuyu güncelleyelim.
sudo yum update
Nginx'i kuralım. Bu şekliyle rpm olarak kurulacaktır. Eğer kaynak koddan kurmak istiyorsanız Nginx ile canlı yayın yapmak isimli makaleden yardım alabilirsiniz.
sudo yum install nginx -y
Sunucu başladığında Nginx'ide başlatmak için aşağıdaki komutu çalıştıyoruz.
sudo systemctl enable nginx.service
Aşağıdaki gibi ekran çıktısı olması gerekiyor.
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.
Nginx'i başlatalım.
sudo service nginx start
Nginx çalışıyor mu kontrol edelim.
sudo service nginx status
Ekran çıktısı;
Nginx'in varsayılan karşılama sayfasına sunucunuzun ip adresini yazıp ulaşabilirsiniz.
Nginx'in varsayılan sayfasının sunucuda bulunduğu dizin.
[[email protected] ~]# ls -l /usr/share/nginx/html/
total 8
-rw-r--r--. 1 root root 537 Oct 18 19:37 50x.html
-rw-r--r--. 1 root root 612 Oct 18 19:37 index.html
Nginx'in ve konfigürasyon dosyalarının bulunduğu dizin.
[[email protected] ~]# ls -l /etc/nginx/
total 32
drwxr-xr-x. 2 root root 25 Jan 5 03:25 conf.d
-rw-r--r--. 1 root root 1007 Oct 18 19:37 fastcgi_params
-rw-r--r--. 1 root root 2837 Oct 18 19:37 koi-utf
-rw-r--r--. 1 root root 2223 Oct 18 19:37 koi-win
-rw-r--r--. 1 root root 3957 Oct 18 19:37 mime.types
lrwxrwxrwx. 1 root root 29 Jan 5 03:25 modules -> ../../usr/lib64/nginx/modules
-rw-r--r--. 1 root root 643 Oct 18 19:35 nginx.conf
-rw-r--r--. 1 root root 636 Oct 18 19:37 scgi_params
-rw-r--r--. 1 root root 664 Oct 18 19:37 uwsgi_params
-rw-r--r--. 1 root root 3610 Oct 18 19:37 win-utf
Nginx ile ilgili genel ayarların bulunduğu conf dosyası.
Bu önemli bir dosya. Nginx kullanıcısı, kaç cpu kullanacağı, loglar, bağlantı zaman açımı süreleri ve yüzlerce ayarı bu dosya içerisinde yapabilirsiniz.
cat /etc/nginx/nginx.conf
Ekran çıktısı;
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
Nginx'in varsayılan karşılama sayfasının bulunduğu conf dosyasın olduğu dizin.
[[email protected] ~]# ls -l /etc/nginx/conf.d/
total 4
-rw-r--r--. 1 root root 1097 Oct 18 19:35 default.conf
Bu dosya içerisinde gördüğünüz gibi server_name localhost yazmaktadır. Ip adresinizi internet tarayıcınıza yazıp karşılaştığınız varsayılan sayfa için buradaki conf ayarları gerekmektedir.
cat /etc/nginx/conf.d/default.conf
Ekran çıktısı.
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
Nginx http://nginx.org ↩