Nginx Proxy kurulumuna başlamak için öncelikle CWP arayüzünde sol tarafta bulunan menü üzerinden Apache Settings sekmesi altında bulunan "Select WebServers" seçeneğine tıklıyoruz.
Açılan sayfada Apache & Nginx Reverse Proxy seçeneğine tıklayıp Save & Rebuild Configuration butonuna tıklıyoruz.
Yapılandırma gerçekleştirildikten sonra Rebuild All Virtual Hosts butonuna ve hemen ardından çıkan uyarı Tamam diyerek kurulumu tamamlıyoruz.
Kontrolünü sağlamak için https://katoptrik.com/http2-test/ adresinden Online Apache Nginx HTTP2 test aracını kullanabilirsiniz.
Yapılandırmaya başlamadan önce ilgili nginx.conf dosyamınızın yedeğini aynı dizine alıyoruz.
cp -pr /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
> /etc/nginx/nginx.conf
vi /etc/nginx/nginx.conf
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/
# nginx'i calistiracak kullanici
user nginx;
# kac adet worker calismasini istiyorsaniz, sunucunuzda bulunan core sayisi kadar arttirabilirsiniz.
worker_processes 2;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
# maxclient sayisi. [maxclients = worker_processes * worker_connections]
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
# log formati ve lokasyonu
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;
# proxy cache için size ve dizin konfigürasyonu
proxy_cache_path /var/cache/nginx keys_zone=staticfilecache:10m max_size=500m;
proxy_ignore_headers “X-Accel-Expires”;
proxy_ignore_headers “Expires”;
proxy_ignore_headers “Cache-Control”;
sendfile on;
keepalive_timeout 15;
# gzip konfigürasyonu
gzip on;
gzip_comp_level 2;
gzip_min_length 1100;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
# /etc/nginx/conf.d dizinindeki dosyalari yapilandirmaya dahil etmek için gerekli parametre.
include /etc/nginx/conf.d/*.conf;
}
cp -pr /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak
> /etc/nginx/conf.d/default.conf
vi /etc/nginx/conf.d/default.conf
#
# The default server
#
server {
listen 80 default_server;
# server_name olarak alan adi da yazilabilmekter. Bu sekilde birakilirsa
# catchall gorevi gorur. Bu sunucuyu gosteren tum alan adlari icin default vhost.
server_name _;
# nginx kok dizini ve default dokumanlar icin
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
# bulunamayan icerikle alakali hatalari /404.html'e yonlendirmek icin
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
# 5x server error'lari /50x.html sayfasina yonlendirmek icin
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# php dosyalarinin nasil islenecegi ile ilgili parametre
location ~ \.php$ {
root /usr/share/nginx/html;
# fpm'e socket uzerinden erismek icin (sadece bu sekilde yapiyoruz):
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
# alternatif olarak php-fpm'e TCP uzerinden erismek icin (default yontem bu ama biz kullanmamaktayiz)
# fastcgi_pass 127.0.0.1:9000;
# Not: Yukarıdaki parametreyi uncomment etmeden once,
# 1 - Ayni dosyada bulunan fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; ibaresini comment out edin.
# 2 - /etc/php-fpm.d/www.conf dosyasindaki listen = /var/run/php-fpm/php-fpm.sock satırını uncomment out
# etmeniz ve yerine listen = 127.0.0.1:9000 ekledikten sonra fpm'i restart etmeniz gerekir.
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# .htaccess dosyalarina erisime izin vermek icin
location ~ /\.ht {
deny all;
}
# favicon dosyalari icin access log'a yazma ve 204 (no content) status kodu dondurmek icin
location ~* \.(ico)$ {
access_log off;
log_not_found off;
try_files /favicon.ico =204;
}
# static contet dosyalarinin 72 saat cache'te tutulmasini soylemek ve access log'a yazmak icin
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
access_log off;
expires 72h;
}
}
nginx -t
chkconfig nginx on
service nginx start
CentOS Web Panel (CWP)
hakkında diğer konular