Настройка nginx centos 6
Качнем файл с настройками репозитория Nginx и сразу установим его:
Переходим к установке Nginx, тут все просто:
Добавим Nginx в автозагрузку при старте системы и запустим его:
Если мы попытаемся подключиться к Nginx, то у нас ничего не получится т.к. правила фаерволла блокируют доступ к 80му порту.
Добавим правила для Nginx:
Содержимое файла примерно следующее:
Тут видно что разрешен доступ к порту 22, остальные порты заблокированы, возьмем за основу данное правило и немного переделаем его, чтобы оно открывало доступ к порту 80
И добавим его под разрешающее правило для SSH
Тогда содержимое примет вид:
Применим правила, чтобы Nginx стал доступен для подключения:
Проверяем, зайдя по адресу httр://IP_вашего_серрвера
Видим приветственную страницу Nginx, значит web-сервер доступен для внешних подключений:
Немножко «допилим» Nginx, чтобы он не выдавал информацию о себе.
Для примера, попробуем перейти по адресу httр://ip_адрес_сервера/test
Сервер выдаст страницу с ошибкой, в низу которой будет видна версия nginx, что не очень хорошо.
нам нужно ее скрыть, а для этого мы идем в:
Сохраним изменения и перезапустим Nginx
Обновляем страницу с ошибкой и видим что версия Nginx больше не отображается.
Создадим пользователя для работы с виртуальным хостом
Назовем его example:
При создании пользователя, отключим ему доступ к шеллу, так безопаснее.
также, при создании пользователя, мы завели одноименную группу example, она нам также пригодится.
Придумаем для пользователя example пароль:
Создадим необходимые, для работы WEB сайта, директории:
Предоставляем пользователю example права на них:
Предоставим Nginx доступ в домашнюю директорию пользователя example, добавив пользователя nginx в группу example
А также предоставим группе example, в которую входит пользователь nginx, права на чтение и выполнение внутри домашней директории пользователя example:
Создадим виртуальный хост Nginx
С содержимым:
(Здесь я привожу только базовые настройки, чтобы работало, если нужно добавить что-то дополнительно, то вы сделаете это сами, исходя из ваших задач )
Сохраняем изменения и выходим
Переходим к установке php-fpm
Переходим к конфигурационном файлу:
находим строку ;cgi.fix_pathinfo=1 и снимаем с нее комментарий, это закрывает уязвимость с произвольным выполнением кода, чтобы выглядело:
Нам также требуется перенастроить php-fpm на работу по пользователя Nginx т.к. у пользователя nginx, который входит в в группу example, есть права на выполнение скриптов, но для этого нам требуется изменить пользователя и группу под которой работает php-fpm, по умолчанию, это группа и пользователь apache нам это надо изменить, переходим к файлу:
Меняем apache на nginx чтобы выглядело
Сохраняем изменения и выходим
Добавим php-fpm в автозагрузку и запустим:
Создадим тестовый файл, чтобы проверить работоспособность PHP5:
Все отлично PHP обрабатывается, сайт открывается, переходим к установке MySQL
Устанавливаем Mysql сервер
На этом, с настройкой основного функционала web сервера на CentOS, можно и закончить, если есть вопросы прошу в комментарии, нашли ошибку, пишите в личку.
В этой статье, я покажу и расскажу как установить Nginx и PHP (PHP-FPM) чтобы они совместно работали в CentOS 6. Для начала я использовал чистую версию CentOS 6. Первым шагом является update CentOS до последней версии, чтобы это сделать введите следующую команду:
Для начала установки нужно установить несколько пакетов, т.к я использую 64бит центОС:
Установка Nginx на Centos 6
Соберу энжинкс из исходного кода, то этому нужно посетить официальный сайт и скачать последнюю версию:
Сконфигурируем наш nginx, а затем соберем его:
Вы можете получить некоторые ошибки вроде следующего:
ошибка, нужно установить pcre-devel.x86_64
Так же может выскочить еще ошибка:
ошибка, нужно установить openssl.x86_64 и openssl-devel.x86_64
Исправляем мы это следующим образом:
Так же Вы можете посмотреть и найти ошибку в моей статье, если у вас есть какие то проблемы, в ней собраны часто распространенные ошибки при компиляции ПХП.
Если вы хотите запустить Nginx по умолчанию при загрузке системы, то для этого нужно создать файл/etc/init.d/Nginx со следующим содержанием:
Посмотреть можно его тут (скачать тоже).
Изменим права на файл Nginx, чтобы он мог выполняться, для этого выполните:
Чтобы запустить Nginx в первый раз выполните следующую команду:
Установка PHP (PHP-FPM) из исходников на CentOS
Идем на сайт ХП и скачиваем самую последнюю версию PHP (или не самую, выбирать Вам), я буду использовать php-5.3.8:
Для того чтобы собрать PHP, я создал bash файл с именем php-fpm.sh и добавил в него следующую сборку: Посмотреть можно его тут (скачать тоже).
Чтобы сделать конфигур и скомпилировать ПХП выполните следующие команды:
Если у вас есть проблемы со сборкой PHP, то читайте эту статью (напишу скоро!). Следующий шаг, скопируйте php.ini в /webserver/php/etc/, для этого выполним:
Отредактируем PHP-fpm.conf и добавим следующие данные:
Если вы хотите запустить PHP-FPM по умолчанию при загрузке системы, то нужно создать файл /etc/init.d/php-fpm и добавить следующие данные:
Посмотреть можно его тут (скачать тоже).
Сменим права на файл для его выполнения:
Для запуска PHP-FPM впервый раз, введите следующую команду:
Настройка PHP-FPM и Nginx чтобы они работали вместе
Файл конфигурации для Nginx находится в /webserver/nginx/conf/nginx.conf. Для редактирования nginx.conf введите следующую команду:
Раскомментируйте следующие строки:
Введите следующую команду, чтобы перезапустить Nginx:
Добавить комментарий Отменить ответ
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
Читайте также: