Как установить Apache и Nginx (mod-rpaf) на CentOS 6

Установка Apache и Nginx гарантирует снижение нагрузки на сервер. В то время как Nginx обрабатывает запросы пользователей и выдает статичный контент, Apache не расходует ресурсы на эти процессы, а выполняет задачи другого плана. Зачастую Apache и Nginx используют в том случае, когда речь идет о крупных проектах. Разберемся, как установить Apache и Nginx (mod-rpaf) на CentOS 6.

 

  • Установка Apache

Установите httpd, PHP, mysql-server, php-mysq и php-mbstring:

yum -y install httpd mysql mysql-server php php-mysql php-mbstring

 

Откройте в режиме редактирования файл /etc/httpd/conf/httpd.conf:

nano /etc/httpd/conf/httpd.conf

 

Выставьте параметры:

Timeout 60

KeepAlive Off

# MaxKeepAliveRequests 100

# KeepAliveTimeout 10

StartServers 2

MinSpareServers 2

MaxSpareServers 4

ServerLimit 6

MaxClients 10

MaxRequestsPerChild 800

Listen 8080

User apache

Group apache

NameVirtualHost *:8080

 

Создайте файл конфигурации в папке /etc/httpd/conf.d. Вы можете присвоить файлу любое имя, но расширение должно быть .conf. Например:

nano etc/httpd/conf.d/file.conf

 

Добавьте в него строки, подставив свои значения в полях ServerName, ServerAlias и <Directory "">:

<VirtualHost          *:8080>

  ServerName vpsLyf1N.s-host.com.ua

  ServerAlias www.vpsLyf1N.s-host.com.ua

   DocumentRoot /var/www/html

<Directory "/home/directory">

  AllowOverride All

  Options +Includes

</Directory>

</VirtualHost>

 

  • Установка Nginx

Создайте репозиторий:

nano /etc/yum.repos.d/nginx.repo

 

Скопируйте в него:

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

 

Установите Nginx и откройте файл конфигурации:

yum install nginx

nano /etc/nginx/nginx.conf

 

Поменяйте текущие значения на приведенные ниже:

user apache;

worker_processes auto;

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;

  client_max_body_size 24M;

  #tcp_nopush     on;

  keepalive_timeout  65;

gzip on;

gzip_min_length  1100;

gzip_proxied     any;

gzip_disable     "msie6";

gzip_comp_level  8;

#gzip_types text/plain text/html text/xml application/xml application/x-javascript text/javascript text/css text/json;

gzip_types text/plain text/xml application/xml application/x-javascript text/javascript text/css text/json;

#gzip_types text/html text/xml text/css application/x-javascript text/javascript;

include /etc/nginx/conf.d/*.conf;

}

 

Создайте файл конфигурации в папке /etc/nginx/conf.d. Расширение файла должно быть .conf. Например:

nano /etc/nginx/conf.d./file01

 

Скопируйте в него текст, заменив vpsLyf1N.s-host.com.u и root на свои значения  :

# A virtual host vpsLyf1N.s-host.com.ua

server {

#  listen       vpsLyf1N.s-host.com.ua:80;

 listen 80;

 server_name  vpsLyf1N.s-host.com.ua;

  access_log  /var/log/nginx/vps_access.log;

                  location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|swf|js|doc|docx|pdf|xls|xlsx|rar|zip|tbz|7z|exe)$ {

                  root /var/www/html/directory/;

                  expires 10d;

                                                                  }

                  location ~ /\.ht {

                                      deny  all;

                                                                  }

  location = /stat {

  stub_status on;

  access_log  off;

#   allow xx.xx.xx.xx;

#   deny all;

                 }

location / {

proxy_pass         http://127.0.0.1:8080/;

proxy_redirect     off;

log_not_found     off;

proxy_set_header   X-Real-IP $remote_addr;

proxy_set_header   Host $http_host;

proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;

           }

           }

 

  • Установка mod_rpaf

Установите репозиторий mod_rpaf:

rpm -ivh http://download.ispsystem.com/repo/centos/release/6/x86_64/mod_rpaf-0.8.2-1.el6.x86_64.rpm

 

Откройте в режиме редактирования файл /etc/httpd/conf.d/mod_rpaf.conf:

nano /etc/httpd/conf.d/mod_rpaf.conf

 

Выставьте параметры:

LoadModule rpaf_module modules/mod_rpaf-2.0.so

# mod_rpaf Configuration

RPAF_Enable On

RPAF_SetHostName On

RPAF_ProxyIPs 127.0.0.1 10.0.0.1

RPAF_Header X-Forwarded-For

 

Перезапустит nginx и httpd:

service httpd restart && service nginx restart

 

Создайте файл info.php, если вы не сделали этого раньше. Добавьте в него строку:

nano info.php

<? phpinfo(); ?>

 

Сохраните изменения. Чтобы проверить, установлен ли Apache+Nginx, перейдите по адресу ваш-домен/info.php и ваш-домен:8080/info.php.

Powered by Simple Blog