Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-nginx-global-params-and-virtual-hosts-for-php-fpm

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-nginx-global-params-and-virtual-hosts-for-php-fpm [28.03.2016 22:26] – [Настройка службы Nginx] Алексей Максимовunix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-nginx-global-params-and-virtual-hosts-for-php-fpm [29.03.2016 09:10] (текущий) – [Тестирование PHP] Алексей Максимов
Строка 98: Строка 98:
 # #
 include /etc/nginx/conf.d/*.conf; include /etc/nginx/conf.d/*.conf;
-# 
 include /etc/nginx/sites-enabled/*; include /etc/nginx/sites-enabled/*;
 </file> </file>
Строка 110: Строка 109:
  
 \\ \\
-==== Создание виртуальных хостов nginx ====+==== Создание виртуальных хостов Nginx ====
  
 Как уже упоминалось ранее, настройки сайта по умолчанию хранятся в файле **/etc/nginx/sites-available/default**.  Как уже упоминалось ранее, настройки сайта по умолчанию хранятся в файле **/etc/nginx/sites-available/default**. 
Строка 118: Строка 117:
 <code>sudo rm /etc/nginx/sites-enabled/default</code> <code>sudo rm /etc/nginx/sites-enabled/default</code>
  
-Создадим отдельный конфиг.файл для первого сайта, скопировав его из конфиг.файла **default** и подключим его, создав соответствующую сиволическую ссылку.+Создадим отдельный конфиг.файл для первого сайта, скопировав его из конфиг.файла **default** и подключим его, создав соответствующую символическую ссылку.
 При создании конфиг.файлов под виртуальные хосты для удобства будем присваивать им имена сайтов. При создании конфиг.файлов под виртуальные хосты для удобства будем присваивать им имена сайтов.
  
Строка 133: Строка 132:
  
 total 0 total 0
-lrwxrwxrwx 1 root root 37 Mar 24 10:05 mydomain.ru -> /etc/nginx/sites-available/mydomain.ru +lrwxrwxrwx 1 root root ... mydomain.ru -> /etc/nginx/sites-available/mydomain.ru 
-lrwxrwxrwx 1 root root 42 Mar 24 10:06 blog.mydomain.ru -> /etc/nginx/sites-available/blog.mydomain.ru +lrwxrwxrwx 1 root root ... blog.mydomain.ru -> /etc/nginx/sites-available/blog.mydomain.ru 
-lrwxrwxrwx 1 root root 43 Mar 24 10:06 forum.mydomain.ru -> /etc/nginx/sites-available/forum.mydomain.ru +lrwxrwxrwx 1 root root ... forum.mydomain.ru -> /etc/nginx/sites-available/forum.mydomain.ru 
-lrwxrwxrwx 1 root root 42 Mar 24 10:06 wiki.mydomain.ru -> /etc/nginx/sites-available/wiki.mydomain.ru+lrwxrwxrwx 1 root root ... wiki.mydomain.ru -> /etc/nginx/sites-available/wiki.mydomain.ru
 </code> </code>
  
Строка 151: Строка 150:
  
 \\ \\
-==== Настройка виртуальных хостов nginx ====+==== Настройка виртуальных хостов Nginx ====
  
 Теперь нам предстоит настроить файлы виртуальных хостов. Теперь нам предстоит настроить файлы виртуальных хостов.
-Редактируем настройки первого виртуального хоста (сайт mydomain.ru).+Редактируем настройки первого виртуального хоста (сайт **mydomain.ru**).
 В нашем примере он будет содержать миниму настроек, так как будет нацелен на редирект всех запросов на другой виртуальный хост, то есть в нашем примере В нашем примере он будет содержать миниму настроек, так как будет нацелен на редирект всех запросов на другой виртуальный хост, то есть в нашем примере
-все клиентские запросы на сайт mydomain.ru должны перенаправлятся на адрес сайта блога blog.mydomain.ru+все клиентские запросы на сайт **mydomain.ru** должны перенаправлятся на адрес сайта блога **blog.mydomain.ru**
  
 <code>sudo nano /etc/nginx/sites-available/mydomain.ru</code> <code>sudo nano /etc/nginx/sites-available/mydomain.ru</code>
  
-Здесь мы определим основные параметры виртуального хоста:  +Здесь мы определим основные параметры виртуального хоста: 
- * **listen** - номер порта, на котором доступен сайт mydomain.ru; +  * **listen** - номер порта, на котором доступен сайт mydomain.ru; 
- * **root** - корневой каталог файлов веб-сайта (был создан нами ранее); +  * **root** - корневой каталог файлов веб-сайта (был создан нами ранее); 
- * **server_name** - доменное имя, которое бует приниматься веб-сервером для этого сайта; +  * **server_name** - доменное имя, которое бует приниматься веб-сервером для этого сайта; 
- * **access_log** и **error_log** - расположение файлов логов веб-сайта.  +  * **access_log** и **error_log** - расположение файлов логов веб-сайта.\\ Для удобства для каждого сайта лучше сделать отдельные логи. 
-   Для удобства для каждого сайта лучше сделать отдельные логи. +  * **location** - определение правил обработки того или иного url веб-сайта.\\ В данном примере все запросы перенаправляются на другой сайт.\\ При необходимости, мы можем добавить нужное нам количество секций **location**, в которых будут обрабатываться правила обработки запросов по аналогии с правилами файлов **.htaccess** обрабатываемых веб-сервером **Apache**
- * **location** - определение правил обработки того или иного url веб-сайта. В данном примере все запросы перенаправляются на другой сайт. +
-   При необходимости, мы можем добавить нужное нам количество секций **location**, в которых будут обрабатываться правила обработки запросов по аналогии с правилами файлов **.htaccess** обрабатываемых веб-сервером **Apache**+
  
 <file php /etc/nginx/sites-available/mydomain.ru> <file php /etc/nginx/sites-available/mydomain.ru>
Строка 183: Строка 180:
  
  
-Редактируем настройки второго виртуального хоста (сайт blog.mydomain.ru).+Редактируем настройки второго виртуального хоста (сайт **blog.mydomain.ru**).
  
 <code>sudo nano /etc/nginx/sites-available/blog.mydomain.ru</code> <code>sudo nano /etc/nginx/sites-available/blog.mydomain.ru</code>
Строка 211: Строка 208:
 </file> </file>
  
-В данном примере в одной из секций **location** (определяющей правила обработки всех *.php файлов) присутсвует параметр **fastcgi_pass** +В данном примере в одной из секций **location** (определяющей правила обработки всех *.php файлов) присутсвует параметр **fastcgi_pass**В этом параметре мы указываем путь к **unix-сокету**, который мы [[:unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-php5-and-php-fpm-for-nginx|создавали ранее]]. 
-В этом параметре мы указываем путь к **unix-сокету**, который мы [[:unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-php5-and-php-fpm-for-nginx|создавали ранее]].+
 Напомню, что ранее мы создали отдельные unix-сокеты для каждого пула **PHP-FPM**.  Напомню, что ранее мы создали отдельные unix-сокеты для каждого пула **PHP-FPM**. 
 Таким образом, с помощью этих сокетов, здесь мы выполняем связку виртуальных хостов **nginx** с созданными ранее пулами **PHP-FPM**.  Таким образом, с помощью этих сокетов, здесь мы выполняем связку виртуальных хостов **nginx** с созданными ранее пулами **PHP-FPM**. 
  
 По аналогии с вышеприведённым примером отредактируем конфигурационные файлы виртуальных хостов **nginx** для остальных сайтов: По аналогии с вышеприведённым примером отредактируем конфигурационные файлы виртуальных хостов **nginx** для остальных сайтов:
-**/etc/nginx/sites-available/forum.mydomain.ru** для сайта **forum.mydomain.ru** +  * **/etc/nginx/sites-available/forum.mydomain.ru** для сайта **forum.mydomain.ru** 
-**/etc/nginx/sites-available/wiki.mydomain.ru** для сайта **wiki.mydomain.ru**+  **/etc/nginx/sites-available/wiki.mydomain.ru** для сайта **wiki.mydomain.ru** 
 При этом в конфигурации каждого виртуального хоста не забудем указать свой отдельный unix-сокет для совместной работы **nginx** с **PHP-FPM**. При этом в конфигурации каждого виртуального хоста не забудем указать свой отдельный unix-сокет для совместной работы **nginx** с **PHP-FPM**.
  
Строка 255: Строка 253:
 Проверим возможность открытия скрипта с каждого сайта по ссылке типа http://blog.mydomain.ru/testphp.php Проверим возможность открытия скрипта с каждого сайта по ссылке типа http://blog.mydomain.ru/testphp.php
  
-СКРИНШОТ+{{ :unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:pasted:20160328-224006.png }}
  
-После проверок не забываем удалить тестовый файл из всех корневых папок сайтов:+<WRAP center important> 
 +Во избежание открытия излишней информации о конфигурации нашего веб-сервера, после проверок не забываем удалить тестовый php-скрипт из всех корневых папок сайтов:
  
 <code>sudo rm /var/www/html/blog/testphp.php</code> <code>sudo rm /var/www/html/blog/testphp.php</code>
 +</WRAP>
 +
  
 \\ \\
 ==== Дополнительные источники информации ==== ==== Дополнительные источники информации ====
  
-[[http://help.ubuntu.ru/wiki/nginx-phpfpm|help.ubuntu.ru - Веб-сервер на основе Nginx и PHP-FPM]] +  * [[http://help.ubuntu.ru/wiki/nginx-phpfpm|help.ubuntu.ru - Веб-сервер на основе Nginx и PHP-FPM]] 
-[[http://pektop.net/2013/09/sovety-po-nastrojke-i-optimizacii-nginx-i-php-fpm/]] +  [[http://pektop.net/2013/09/sovety-po-nastrojke-i-optimizacii-nginx-i-php-fpm/|Ректор - Советы по настройке и оптимизации Nginx и PHP-FPM]] 
-[[https://www.digitalocean.com/community/tutorials/how-to-host-multiple-websites-securely-with-nginx-and-php-fpm-on-ubuntu-14-04]]+  [[https://www.digitalocean.com/community/tutorials/how-to-host-multiple-websites-securely-with-nginx-and-php-fpm-on-ubuntu-14-04|DigitalOcean - How To Host Multiple Websites Securely With Nginx And Php-fpm On Ubuntu 14.04]]
  
 ---- ----
Строка 275: Строка 276:
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
- 
unix-linux/ubuntu/ubuntu-14-04-lts-trusty-tahr/how-to-install-lemp-web-server-on-ubuntu-14-04/setup-nginx-global-params-and-virtual-hosts-for-php-fpm.1459193207.txt.gz · Последнее изменение: 28.03.2016 22:26 — Алексей Максимов

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki