NGINX ДЛЯ APACHE В UBUNTU 20.04

NGINX ДЛЯ APACHE В UBUNTU 20.04

Прежде всего давайте поменяем порт Апаче так как Nginx будет у нас на порт:80 который сейчас занимает Апаче.Все рабочие конфиги которые мы будем изменять, продублируем просто добавляя в конце 1, а редактируем оригинал.

Вначале копируем рабочие конфиги апаче, а потом сайтов.

cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf1

и порт

cp /etc/apache2/ports.conf /etc/apache2/ports.conf1

Далее конфиги сайтов им давайте сразу поменяем конфиг сайта на дефолте, задав ему имя порт и работать будем уже с ним, а дефолтный отключим.

cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/port.conf 

Включаем  port.conf,  а 000-default.conf  отключаем

a2ensite port
a2dissite 000-default 

 И продублируем второй сайт shop 

cp /etc/apache2/sites-available/shop.conf /etc/apache2/sites-available/shop.conf1 

Заходим в конфиги Апаче порт и меняем порт на 8082. Listen 8082 

nano /etc/apache2/ports.conf

 Сохраняем  Ctrl + S + Z

Так же меняем и в конфигах сайта shop.conf и port.conf  80 на <VirtualHost *:8082> 

nano /etc/apache2/sites-available/port.conf 
 
nano /etc/apache2/sites-available/shop.conf 

И перезагружаем Апаче 

systemctl reload apache2 

Устанавливаем Nginx

apt install nginx 

Чтобы нам не создавать симлинки при создании сайтов, будем конфиги сайтов создавать в папке conf.d  Для этого раскомментируем строку

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

 В убунту 20 она должна быть раскомментирована по умолчанию. Проверим

nano /etc/nginx/nginx.conf

Создадим конфиги наших сайтов в папке conf.d скопировав туда default и поменяв название и добавив приставку конф, иак как в папке конф.д  работают так.

cp /etc/nginx/sites-available/default /etc/nginx/conf.d/port.conf 

Если же вы хотите использовать по умолчанию то создав или скопировав как в примере выше файл с конфигом сайта создайте на него сим линк без формата .conf

ln -s /etc/nginx/sites-available/port /etc/nginx/sites-enabled/port

Установка MOD-RPAF

Далее для того чтобы Nginx работал с  Apache установим мод mod-rpaf

apt-get install libapache2-mod-rpaf 

Запустим его 

a2enmod rpaf 

Далее зайдем и раскомментируем строку  RPAFheader X-Real-IP 

nano /etc/apache2/mods-enabled/rpaf.conf 

А в файл proxy_params 

nano /etc/nginx/proxy_params 

 удалив все добавим заметьте наш порт 8082 если у вас другой то меняйте на свой.

location / {    proxy_pass http://127.0.0.1:8082;
proxy_set_header Host $host;     
proxy_set_header X-Real-IP $remote_addr;     
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_read_timeout 300s;  
proxy_connect_timeout 120;
proxy_send_timeout 120;
 
} 

И подключать его будем ко всем конфигам сайтов которые у нас будут работать через Nginx

В конфиг файл сайта  подключим инклюд к прокси 

include proxy_params;

который мы заполнили выше и статические файлы которые Nginx будет обрабатывать сам. Открываем 

nano /etc/nginx/conf.d/port.conf  

 Так же можно все закомментировать и сверху вставить как в примере, заменив только на свой путь к директориям 

/var/www/html/port 

и домены на свои

port.fvds.ru

server {
listen 80;
listen [::]:80;
server_name port.fvds.ru www.port.fvds.ru; 
include proxy_params; 
root /var/www/html/port;
index index.php index.html;
# serve static files directly
location ~* ^.+\.(jpg|jpeg|gif|png|ico|svg|bmp|js|css|mp3|m4a|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
root /var/www/html/port;
index  index.php;
access_log off;
}
location ~ /\.ht {
	 	deny all;
	 }
}  

Так же для отображения реально IP должен быть включен remoteip, 

a2enmod remoteip

Дополнительные настройки можете найти здесь

Все теперь у нас работает Nginx с Apache

Дальше безопасность сайта: добавляем SSL прячем PHPMYADMIN

22:07
1253
Lit
RSS
Нет комментариев. Ваш будет первым!

Похожий контент

Ioncube Loader это PHP модуль, для загрузки файлов, защищенных ПО Ioncube Encoder. Io...
Nginx – один из самых популярных веб-серверов в мире, позволяющий размещать очень объемн...
HTTP-сервер Apache – самый популярный веб-сервер. Он предоставляет множество производите...
Стек LAMP – это группа открытых программ, которая необходима серверу для поддержки динам...