Haz 04, 2015 Müh. Ali Fatih Çelik Genel, Linux 1
Arkadaşlar Merhaba ,
Bu yazımızda bu sefer çok daha farklı bir yapı ile ilerleyeceğiz. Kullanıcı isteklerini nginx karşılayacak ve arka tarafta apache’ye gönderip derleyecek. Bu işlemi neden yapıyoruz basit bir nedenden dolayı CACHE’lemek için 🙂 Lafı uzatmadan direk olarak kuruluma başlayalım.
1 – Kurulumlar
#wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
#rpm -i nginx-release-centos-6-0.el6.ngx.noarch.rpm
#yum install httpd httpd-devel nginx -y
#wget https://github.com/y-ken/mod_rpaf/archive/master.zip
#unzip master.zip
#cd mod_rpaf-master/
#apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c
Buraya kadar yaptıklarımızı kısaca açıklıyım arkadaşlar ilk önce apache programını kurduk web server olarak üzerine nginx programını kurup üstünede mod_rpaf ı kurduk ki nginx ten gelen isteklerin loglarında 127.0.0.1 yerine real ip görebilmek için bu kısım tamamen güvenliğimiz için başka bir nedeni yok 🙂 2 – Config yapma Öncelikle hem apache hem nginx 80 portundan konuşamayacağı için apachenin portunu 81’e çekiyoruz.
#nano -w /etc/httpd/conf/httpd.conf
Listen 80 yazanı Listen 81 olarak değiştiriyorum. sıra geldi sitemizin dosyalarının duracağı lokasyonu belirlemeye. Bunun için gene aynı dosyanın en altına kendinize göre düzenleyerek bunu ekliyoruz;
NameVirtualHost 127.0.0.1:81 DocumentRoot /var/www/html/ <VirtualHost 127.0.0.1:81> ServerName www.bilgisagla.com ServerAlias bilgisagla.com DocumentRoot /var/www/bilgisagla.com <Directory "/var/www/bilgisagla.com"> Options FollowSymLinks -Includes AllowOverride All Order allow,deny Allow from all </Directory> RewriteEngine on </VirtualHost>
Önemli not : DocumentRoot kendi açılamayacağı için mkdir ile kendimiz yaratıyoruz. Sıra geldi Nginx conf’unu ayarlamaya bunun için ;
#nano -w /etc/nginx/nginx.conf
girip içeriği tamamen silip aşağıdaki kodu yapıştırıyoruz.
user nobody; worker_processes 4; error_log logs/error.log crit; worker_rlimit_nofile 8192; events { worker_connections 1024; use epoll; } http { server_names_hash_max_size 2048; server_names_hash_bucket_size 512; server_tokens off; include mime.types; default_type application/octet-stream; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 10; # Gzip on gzip on; gzip_min_length 1100; gzip_buffers 4 32k; gzip_types text/plain application/x-javascript text/xml text/css; # Other configurations ignore_invalid_headers on; client_max_body_size 8m; client_header_timeout 3m; client_body_timeout 3m; send_timeout 3m; connection_pool_size 256; client_header_buffer_size 4k; large_client_header_buffers 4 32k; request_pool_size 4k; output_buffers 4 32k; postpone_output 1460; # Cache most accessed static files open_file_cache max=10000 inactive=10m; open_file_cache_valid 2m; open_file_cache_min_uses 1; open_file_cache_errors on; # virtual hosts includes include "/etc/nginx/conf.d/*.conf"; }
Sıra geldi reverse proxy ayarlarını yapmaya bunun için 1 adet dosya yaratıyoruz.
#nano -w /etc/nginx/conf.d/bilgisagla.com.conf
yarattığımız dosyanın içerisine de
server { listen 80; server_name bilgisagla.com www.bilgisagla.com; access_log off; error_log logs/bilgisagla-error_log crit; location ~* .(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|html|htm|wml)$ { root /var/www/bilgisagla.com; expires 365d; } location / { client_max_body_size 10m; client_body_buffer_size 128k; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 128k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k; proxy_temp_file_write_size 256k; proxy_connect_timeout 30s; proxy_redirect http://www.bilgisagla.com:81 http://www.bilgisagla.com; proxy_redirect http://bilgisagla.com:81 http://bilgisagla.com; proxy_pass http://127.0.0.1:81/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
bunuda yazdığımızda aslında işlemimiz bitti sayılır eğer mod_rpaf kurmayacaksak. kuracaksak aşağıdaki dosyayı yarattıktan sonra içine küçük minik bir conf daha yapıyoruz.
#nano -w /etc/httpd/conf.d/rpaf.conf
LoadModule rpaf_module modules/mod_rpaf-2.0.so
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 127.0.0.1 SERVER_IP_ADRESINIZ
Son dokunuşlarımızı da yaparak işlemimizi bitiriyoruz buda servislere start vermek 🙂
#/etc/init.d/httpd start
#/etc/init.d/nginx start
test için şunu yapabilirsiniz.
#curl -I http://www.bilgisagla.com
nginx ve 200 Ok alırsanız işlem tamam demektir. DNS’lerinizi yönlendirebilirsiniz.
Bilgisayar Mühendisi. Network , Linux ve Güvenlik alanlarında çalışmayı sever...
Oca 28, 2016 0
Oca 21, 2016 0
Ağu 29, 2014 0
Tem 19, 2014 0
Mar 17, 2016 0
Mar 09, 2016 0
Oca 18, 2016 0
Oca 18, 2016 0
Yorum yapabilmek için giriş yapmalısınız.
Eline agzina saglik, faydali bilgilendirme icin tesekkurler