Есть ли у nginx php
Как настроить PHP на NGINX с примером FASTCGI (PHP-FPM)
1. Настройка: ошибка:. Xml2-config не найден.
Есть ли у nginx php
Создание из источника нелегко, если что -то немного другое, и мне было трудно с некоторыми каталогами и параметрами конфигурации. Я колебался вокруг Интернета, пока не нашел этот сайт, который переведен с китайского. Ни у кого больше не было решения. Я не мог заставить PHP FPM для начала, пока не изменил каталог (пункт 2.Ошибка: невозможно глобализировать). У меня были другие проблемы, перечисленные, но я смог решить их. Пожалуйста, не удаляйте это, это очень полезная информация.
Оригинальный сайт (он на китайском языке, а не на моем сайте, но я хочу отдать должное):
(Есть еще немного, вы можете перейти на сайт)
1. Настройка: ошибка:. Xml2-config не найден.
apt-get установить libxml2-dev
2.Предупреждение: Объявление Pear_installer :: Download () должно быть совместимы с & pear_downloader :: скачать ($ params) в phar: /// root/php-7.0.0alpha1/груша/установка-пирог-нозлиб.Фар /Груша /Установщик.PHP на линии 43
Предупреждение: Объявление PEAR_PACKAGEFILE_PARSER_V2 :: parse () должно быть совместимо с Pear_xmlparser :: parse ($ data) в phar: /// root/php-7.0.0alpha1/груша/установка-пирог-нозлиб.Phar/ Page/ Package -File/ parser/ v2.PHP ON Line 113
[PEAR] ARCHIVE_TAR – уже установлен: 1.3.13
[PEAR] Console_getOpt – уже установлен: 1.3.1
[Pear] structures_graph- Уже установлена: 1.0.4
Предупреждение: Объявление PEAR_TASK_REPLACE :: init () должно быть совместимо с PEAR_TASK_COMMON :: init ($ xml, $ fileattributes, $ astversion) в phar: /// root/php-7.0.0alpha1/груша/установка-пирог-нозлиб. phar / gear / asdy / reply.PHP онлайн 31
[PEAR] XML_UTIL – уже установлен: 1.2.3
Предупреждение: Объявление PEAR_TASK_WINDOWSEOL :: init () должно быть совместимо с PEAR_TASK_COMMON :: init ($ xml, $ fileattributes, $ astpersion) в Phar: /// root/php-7.0.0alpha1/груша/установка-пирог-нозлиб. Phar / Pear / Task / Windowseol.PHP на линии 76
Предупреждение: Объявление PEAR_TASK_UNIXEOL :: init () должно быть совместимо с PEAR_TASK_COMMON :: init ($ xml, $ fileattributes, $ astpersion) в Phar: /// Root/PHP-7.0.0alpha1/груша/установка-пирог-нозлиб. Phar / Pear / Task / Unixeol.PHP на линии 76
[Груша] груша – уже установлена: 1.9.5
1.Ошибка: не удалось открыть файл конфигурации ‘/usr/local/etc/php-fpm.Conf ‘: нет такого файла или каталога (2)
Ошибка: не удалось загрузить файл конфигурации ‘/usr/local/etc/php-fpm.конфликт
Ошибка: FPM инициализация не удалась
PHP-FPM.conf Copy Files из исходного файла в это место.
cp /root /php-7.0.0alpha1/sapi/fpm/php-fpm.conf/usr/local/etc/php-fpm.конфликт
2.Ошибка: невозможно глобализировать ‘/usr/local/none/etc/php-fpm.D/*.Conf ‘(ret = 2) от/usr/local/etc/php-fpm.Conf в строке 125.
Ошибка: не удалось загрузить файл конфигурации ‘/usr/local/etc/php-fpm.конфликт
Ошибка: FPM инициализация не удалась
Редактировать/usr/local/etc/php-fpm.введенный документ конфейт * .CONF PART, изменение на правильный путь включите = / usr / local / etc / php-fpm.D / *. Конфликт
Если нет/usr/local/etc/php-fpm.D каталог, создайте каталог.
3.Предупреждение: ничто не соответствует Pattern ‘/usr/local/etc/php-fpm.D/*.Conf ‘from/usr/local/etc/php-fpm.Conf в строке 125.
ОШИБКА:. В файле конфигурации не должен быть указан пул, по крайней мере, один раздел пула
Ошибка: не удалось поступировать конфигурацию
Ошибка: FPM инициализация не удалась
CP www.конфликт.по умолчанию www.конфликт
4.Ошибка: [Pool www] не может получить GID для группы «никто»
Ошибка: FPM инициализация не удалась
Www.Conf Open Files, пользователи пользователей и группы в настройки NGINX по умолчанию, обычно по умолчанию www-data.
1 год назад
Чтобы максимизировать производительность сервера с самой высокой скоростью, с наименьшим количеством ресурсов, я решил собрать PHP 8 вручную из минимальной ОС на основе Linux/Unix (My Linux Distro представляет собой пакеты на основе RPM)
Моя система успешно поднялась PHP 8.0.9 – с включенным Opcache/JIT и другими модулями расширения PHP PHP. Вот несколько опытов, которые могут сэкономить вам несколько часов исследований.
1. Перед шагом (3) – Настройка и создание PHP – чтобы убедиться, что никаких ошибок не возникает, вы можете обратиться к моей предпосылкой библиотеке.
sudo dnf install \
GCC GCC-C ++ Make Cmake AutoConfig \
zlib zlib-devel pcre pcre-devel \
libxml2-devel libxslt-devel \
Bzip2-Devel Curl-Devel Libzip-Devel \
sqlite-devel \
Systemd-Devel \
openssl-devel \
Libffi-devel \
libpng libpng-devel libwebp libwebp-devel libjpeg libjpeg-devel libxpm libxpm-devel \
freetype-devel \
Gmp-Devel \
libldb-devel \
libc-client libc-client-devel \
OpenLDAP OpenLDAP-Devel \
Oniguruma oniguruma-devel \
net-snmp-devel readline-devel unixodbc-devel \
UW-IMAP UW-IMAP-DEVEVER UW-IMAP-Static UW-IMAP-UTILS \
libicu-devel \
enchant2 enchant2-devel \
GD GD-Devel \
Libsodium libsodium-devel \
Libtidy libtidy-devel
Вы не можете получить ошибку при выпуске ./configure, make && make install. Даже если вы вручную строит свой пакет расширения PHP позже.
2. На шаге 5 – перед изменением PHP.INI – вы можете дважды проверить, читает ли текущий PHP, какой PHP.INI -файл по этой команде
php -ini | Греп PHP.INI
# Мой результат. Он отличается от учебника.
Файл конфигурации (PHP.ini) path =>/usr/local/lib
Загруженный файл конфигурации =>/usr/local/lib/php.INI
4 года назад
Когда я запускаю следующую команду, чтобы запустить PHP-FPM:
/usr/local/bin/php-fpm
Я получил следующую информацию об ошибке:
Невозможно глобализировать ‘/usr/local/none/etc/php-fpm.D/*.Conf ‘(ret = 2) от/usr/local/etc/php-fpm.Conf в строке 143.
Чтобы исправить эту ошибку, сделайте:
Измените ул
Как настроить PHP на NGINX с примером FASTCGI (PHP-FPM)
1. Настройка: ошибка:. Xml2-config не найден.
Есть ли у nginx php
Создание из источника нелегко, если что -то немного другое, и мне было трудно с некоторыми каталогами и параметрами конфигурации. Я колебался вокруг Интернета, пока не нашел этот сайт, который переведен с китайского. Ни у кого больше не было решения. Я не мог заставить PHP FPM для начала, пока не изменил каталог (пункт 2.Ошибка: невозможно глобализировать). У меня были другие проблемы, перечисленные, но я смог решить их. Пожалуйста, не удаляйте это, это очень полезная информация.
Оригинальный сайт (он на китайском языке, а не на моем сайте, но я хочу отдать должное):
(Есть еще немного, вы можете рассказать о сайте)
1. Настройка: ошибка:. Xml2-config не найден.
apt-get установить libxml2-dev
2.Предупреждение: Объявление Pear_installer :: Download () должно быть совместимы с & pear_downloader :: скачать ($ params) в phar: /// root/php-7.0.0alpha1/груша/установка-пирог-нозлиб.Фар /Груша /Установщик.PHP на линии 43
Предупреждение: Объявление PEAR_PACKAGEFILE_PARSER_V2 :: parse () должно быть совместимо с Pear_xmlparser :: parse ($ data) в phar: /// root/php-7.0.0alpha1/груша/установка-пирог-нозлиб.Phar/ Page/ Package -File/ parser/ v2.PHP ON Line 113
[PEAR] ARCHIVE_TAR – уже установлен: 1.3.13
[PEAR] Console_getOpt – уже установлен: 1.3.1
[Pear] structures_graph- Уже установлена: 1.0.4
Предупреждение: Объявление PEAR_TASK_REPLACE :: init () должно быть совместимо с PEAR_TASK_COMMON :: init ($ xml, $ fileattributes, $ astversion) в phar: /// root/php-7.0.0alpha1/груша/установка-пирог-нозлиб. phar / gear / asdy / reply.PHP онлайн 31
[PEAR] XML_UTIL – уже установлен: 1.2.3
Предупреждение: Объявление PEAR_TASK_WINDOWSEOL :: init () должно быть совместимо с PEAR_TASK_COMMON :: init ($ xml, $ fileattributes, $ astpersion) в Phar: /// root/php-7.0.0alpha1/груша/установка-пирог-нозлиб. Phar / Pear / Task / Windowseol.PHP на линии 76
Предупреждение: Объявление PEAR_TASK_UNIXEOL :: init () должно быть совместимо с PEAR_TASK_COMMON :: init ($ xml, $ fileattributes, $ astpersion) в Phar: /// Root/PHP-7.0.0alpha1/груша/установка-пирог-нозлиб. Phar / Pear / Task / Unixeol.PHP на линии 76
[Груша] груша – уже установлена: 1.9.5
1.Ошибка: не удалось открыть файл конфигурации ‘/usr/local/etc/php-fpm.Conf ‘: нет такого файла или каталога (2)
Ошибка: не удалось загрузить файл конфигурации ‘/usr/local/etc/php-fpm.конфликт
Ошибка: FPM инициализация не удалась
PHP-FPM.conf Copy Files из исходного файла в это место.
cp /root /php-7.0.0alpha1/sapi/fpm/php-fpm.conf/usr/local/etc/php-fpm.конфликт
2.Ошибка: невозможно глобализировать ‘/usr/local/none/etc/php-fpm.D/*.Conf ‘(ret = 2) от/usr/local/etc/php-fpm.Conf в строке 125.
Ошибка: не удалось загрузить файл конфигурации ‘/usr/local/etc/php-fpm.конфликт
Ошибка: FPM инициализация не удалась
Редактировать/usr/local/etc/php-fpm.введенный документ конфейт * .CONF PART, изменение на правильный путь включите = / usr / local / etc / php-fpm.D / *. Конфликт
Если нет/usr/local/etc/php-fpm.D каталог, создайте каталог.
3.Предупреждение: ничто не соответствует Pattern ‘/usr/local/etc/php-fpm.D/*.Conf ‘from/usr/local/etc/php-fpm.Conf в строке 125.
ОШИБКА:. В файле конфигурации не должен быть указан пул, по крайней мере, один раздел пула
Ошибка: не удалось опубликовать процесс конфигурации
Ошибка: FPM инициализация не удалась
CP www.конфликт.по умолчанию www.конфликт
4.Ошибка: [Pool www] не может получить GID для группы «никто»
Ошибка: FPM инициализация не удалась
Www.Conf Open Files, пользователи пользователей и группы в настройки NGINX по умолчанию, обычно по умолчанию www-data.
1 год назад
Чтобы максимизировать производительность сервера с самой высокой скоростью, с наименьшим количеством ресурсов, я решил собрать PHP 8 вручную из минимальной ОС на основе Linux/Unix (My Linux Distro представляет собой пакеты на основе RPM)
Моя система успешно поднялась PHP 8.0.9 – с включенным Opcache/JIT и другим модулем расширения PHP. Вот несколько опытов, которые могут сэкономить вам несколько часов исследований.
1. Перед шагом (3) – Настройка и создание PHP – чтобы убедиться, что ошибки не возникают, вы можете обратиться к моей библиотеке предварительных условий.
sudo dnf install \
GCC GCC-C ++ Make Cmake AutoConfig \
zlib zlib-devel pcre pcre-devel \
libxml2-devel libxslt-devel \
Bzip2-Devel Curl-Devel Libzip-Devel \
sqlite-devel \
Systemd-Devel \
openssl-devel \
Libffi-devel \
libpng libpng-devel libwebp libwebp-devel libjpeg libjpeg-devel libxpm libxpm-devel \
freetype-devel \
Gmp-Devel \
libldb-devel \
libc-client libc-client-devel \
OpenLDAP OpenLDAP-Devel \
Oniguruma oniguruma-devel \
net-snmp-devel readline-devel unixodbc-devel \
UW-IMAP UW-IMAP-DEVEVER UW-IMAP-Static UW-IMAP-UTILS \
libicu-devel \
enchant2 enchant2-devel \
GD GD-Devel \
Libsodium libsodium-devel \
Libtidy libtidy-devel
Вы не можете получить ошибку при выдаче ./configure, make && make install. Даже если вы вручную строит свой пакет расширения PHP позже.
2. На шаге 5 – перед изменением PHP.INI – вы можете дважды проверить, читает ли текущий PHP, какой PHP.INI -файл по этой команде
php -ini | Греп PHP.INI
# Мой результат. Это отличается от учебника.
Файл конфигурации (PHP.ini) path =>/usr/local/lib
Загруженный файл конфигурации =>/usr/local/lib/php.INI
4 года назад
Когда я запускаю следующую команду, чтобы запустить PHP-FPM:
/usr/local/bin/php-fpm
Я получил следующую информацию об ошибке:
Невозможно глобализировать ‘/usr/local/none/etc/php-fpm.D/*.Conf ‘(ret = 2) от/usr/local/etc/php-fpm.Conf в строке 143.
Чтобы исправить эту ошибку, сделайте:
Измените строку “include = none/etc/php-fpm.D/*.конфликт », включите = etc/php-fpm.D/*.Conf “в файле”/usr/local/etc/php-fpm.Conf “с текстовым редактором.
После этого я пытаюсь снова запустить PHP-FPM и снова получил информацию об ошибках:
Ничто не соответствует шаблону включения ‘/usr/local/etc/php-fpm.D/*.Conf ‘from/usr/local/etc/php-fpm.Conf в строке 143.
Чтобы исправить эту ошибку, сделайте:
cp/usr/local/etc/php-fpm.D/www.конфликт.по умолчанию/usr/local/etc/php-fpm.D/www.конфликт
4 года назад
CP PHP/PHP.INI-разработка PHP/LIB/PHP.INI
CP PHP/ETC/PHP-FPM.конфликт.PHP/ETC/PHP-FPM по умолчанию.конфликт
CP PHP/ETC/PHP-FPM.D/www.конфликт.PHP/ETC/PHP-FPM по умолчанию.D/www.конфликт
3 года назад
В системе Linux, если вы хотите добавить услугу PHP-FPM в системную службу; Это легко сделать, потому что PHP предлагает сценарий связи:
После Make and Make Install; введите пакет исходного кода SAPI/FPM/Init.дюймовый.PHP-FPM; Введите код в системе Linux.
CP sapi/fpm/init.дюймовый.php-fpm /etc /init.D/PHP-FPM
тогда вы можете использовать «PHP-FPM
7 лет назад
Если вы получите ошибку «Файл не найден», добавьте директивность «root root_dir_location» в блок местоположения PHP I.эн. “Место ~* \.PHP $ < >“, где root_dir_location является корневым каталогом, как”/usr/share/nginx/html ” .
7 лет назад
На шаге 3 после команды “Sudo Make Install”
Если есть проблемы с грушей.PHP.net (https). Необходимо изменить эту линию (с HTTPS на HTTP) в Makefile
Pear_installer_url = http: // pear.PHP.net/install-par-nozlib.фар
11 месяцев назад
Большое усилие для этого урока, спасибо большое, вот мои заметки, если это может помочь кому -либо, учитывая установку по умолчанию в контейнер WSL2
Примечание: композитор добавлен для Laravel Framework.
Они не должны копировать и вставленные такими, как есть, должны быть селективными, так как есть аннотации, кроме некоторых команд,
Кроме того.
SHA256SUM PHP-X.Икс.Икс.смол.GZ => E847745FD66FC8C57FAC993A609FFCD93FDDCCD225F0620A26BB5AE5753C3
TAR ZXF PHP-X.Икс.Икс
Sudo Apt Установка
Sudo apt install -y композитор nginx pkgconf libxml2-dev libsqlite3-dev zlib1g-dev
CD PHP-X.Икс.Икс
./configure-enable-fpm-с mysqli, сделайте Sudo сделать тест sudo сделать установку sudo cp php.INI-Development/usr/local/lib/php.INI
sudo cp/usr/local/etc/php-fpm.D/www.конфликт.по умолчанию/usr/local/etc/php-fpm.D/www.конфликт
sudo cp sapi/fpm/php-fpm/usr/local/bin
sudo vim/usr/local/php/php.INI SUDO VIM/USR/LOCAL/ETC/PHP-FPM.D/www.Conf Sudo Vim Sapi/FPM/PHP-FPM.Conf Sudo CP SAPI/FPM/PHP-FPM.conf/usr/local/etc
/usr/local/bin/php -v sudo/usr/local/bin/php-fpm sudo vim/etc/nginx/sites-arvailable/default
местоположение / #ROOT HTML;
#index индекс.PHP Индекс.HTML -индекс.HTM;
>
Место ~* \.php $ #fastcgi_index индекс.PHP;
FASTCGI_PASS 127.0.0.1: 9000;
Включите Fastcgi_params;
FASTCGI_PARAM SCRIPT_FILENAME $ DOCOCTION_ROOT $ FASTCGI_SICT_NAME;
fastcgi_param script_name $ fastcgi_script_name;
>
*Перезагрузите Nginx (root/var/www/html) Если корневой путь не существует, по умолчанию это:/usr/are/nginx/html
sudo nginx -t sudo service nginx reload
Sudo Service nginx Stop
Sudo Service nginx Start
PHP -FPM должен быть в службе или убить процесс вручную ps -aux | grep php-fpm; убийство
Есть ли у nginx php
- 4 Навыки корпоративного архитектора. Вы никогда не должны упускать из виду, в то время как, конечно, есть много, что станет корпоративным архитектором, какие навыки являются абсолютными «должны» оставаться на.
- Falcor vs. GraphQL: различия, которые имеют значение, хотя оба по существу представляют два подхода к аналогичной конечной цели, существуют некоторые ключевые различия между GraphQL и Falcor .
- Краткий взгляд на язык углеродного программирования – это экспериментальный язык программирования, созданный, чтобы стоять на плечах C ++, но с новым взглядом на безопасность памяти.
- Google дразнит генеративное расширение искусственного интеллекта в рамках своих собственных новых функций Google Google, в том числе помощника по кодированию, тесно связаны с GCP в предварительных демонстрациях на этой неделе, в то время как .
- CatGPT лучше для кодирования, чем платформы с низким кодом? CHATGPT может писать код, но он не может интегрировать код или создавать идеи дизайна. Кроме того, это представляет риски безопасности и лицензирования. На данный момент.
- Несколько простых стратегий по снижению избыточности тестирования программного обеспечения, в то время как комплексное тестовое покрытие необходимо, команды программного обеспечения должны прилагать осознанные усилия, чтобы не дать апартаментам стать .
- Google упускается по генеративному искусственному интеллекту из Google ввода/вывода 2023 года, Paul Nashawaty от Google Commonds Enhancements для поиска Google, фотографий, карт и .
- Эксперты по безопасности делятся облачным аудитом лучшие практики Облачный аудит позволяет организациям оценивать производительность поставщика облачных поставщиков. Эксперты по аудиту Shinesa Cambric и Michael Ratemo Talk .
- Разверните приложение в Google Cloud Run с Terraform с использованием Terraform для развертывания приложения для Google Cloud Run, обеспечивает масштабируемый процесс развертывания и может уменьшить конфигурацию .
- CrowdStrike предупреждает о росте VMware Esxi Hypervisor Attacks, поскольку внедрение внедрения технологии виртуализации предприятия Crowdstrike наблюдало рост атак вымогателей на серверах .
- BL00Dy Ransomware Gang нацелена на школы через недостаток Papercut. Банда BL00DY Ransomware нацелена на школы через критический недостаток удаленного кода .
- Эксперты ставят под сомнение 1 доллар Сан -Бернардино.Оплата выкупа в 1 м, в то время как никакие услуги общественной безопасности не были скомпрометированы в атаке вымогателей на департамент шерифа округа Сан -Бернардино, в .
- AWS Control Tower стремится упростить управление с несколькими учетом, многие организации пытаются управлять своими обширными сборами учетных записей AWS, но Control Tower может помочь. Сервис автоматизирует .
- Разбить модель ценообразования Amazon EKS В модели ценообразования Amazon EKS есть несколько важных переменных. Покопайте номера, чтобы убедиться, что вы развертываете услугу .
- Сравните eks vs. Самоуправляемые Kubernetes на AWS пользователей AWS сталкиваются с выбором при развертывании Kubernetes: запустите его сами на EC2 или позвольте Amazon сделать тяжелую работу с EKS. Видеть .
Как установить Linux, Nginx, MySQL, PHP (стек LEMP) в Ubuntu 16.04
Software Stack LEMP – это группа программного обеспечения, которое можно использовать для обслуживания динамических веб -страниц и веб -приложений. Это аббревиатура, которая описывает операционную систему Linux с веб -сервером Nginx. Данные бэкэнд хранятся в базе данных MySQL, а динамическая обработка обрабатывается PHP.
В этом руководстве мы продемонстрируем, как установить стек LEMP на Ubuntu 16.04 Сервер. Операционная система Ubuntu позаботится о первом требовании. Мы опишем, как поднять остальные компоненты.
Предварительные условия
Перед завершением этого учебника у вас должна быть обычная, не корревая учетная запись пользователя на вашем сервере с привилегиями SUDO. Вы можете узнать, как настроить этот тип учетной записи, завершив нашу Ubuntu 16.04 Начальная настройка сервера.
Как только у вас есть пользователь, войдите на свой сервер с этим именем пользователя. Теперь вы готовы начать шаги, изложенные в этом руководстве.
Шаг 1: Установите веб -сервер Nginx
Чтобы отобразить веб -страницы для посетителей нашего сайта, мы будем использовать Nginx, современный, эффективный веб -сервер.
Все программное обеспечение, которое мы будем использовать для этой процедуры, поступает непосредственно из Ubuntu’S -репозитории пакета по умолчанию. Это означает, что мы можем использовать набор управления пакетами APT для завершения установки.
Поскольку это наш первый раз, используя APT для этого сеанса, мы должны начать с обновления нашего локального индекса пакетов. Затем мы можем установить сервер:
На Ubuntu 16.04, Nginx настроен на начало работы при установке.
Если у вас работает брандмауэр UFW, как указано в нашем первоначальном руководстве по настройке, вам нужно будет разрешить соединения с Nginx. Nginx регистрируется с UFW при установке, поэтому процедура довольно проста.
Рекомендуется включить наиболее ограничительный профиль, который все еще позволит трафик, который вы хотите. С тех пор, как мы убеждены’T Настройка SSL для нашего сервера. В этом руководстве нам нужно будет только разрешить трафик на порту 80.
Вы можете включить это, набрав:
Вы можете проверить изменение, набрав:
Вы должны увидеть HTTP -трафик, разрешенный в отображаемом выходе:
ВыходСтатус: Активность к действию от------- ---- openssh Разрешить nginx http разрешить где угодно openssh (v6) разрешить в любом месте (v6) nginx http (v6) разрешать где угодно (v6)
С добавлением нового правила брандмауэра вы можете проверить, работает ли сервер, получив доступ к вашему серверу’S -имя доменного или публичного IP -адреса в вашем веб -браузере.
Если у вас нет доменного имени, указанного на вашем сервере, и вы не знаете свой сервер’S Public IP -адрес, вы можете найти его, введя один из следующего в своем терминале:
Это распечатает несколько IP -адресов. Вы можете попробовать каждый из них в свою очередь в своем веб -браузере.
В качестве альтернативы вы можете проверить, какой IP -адрес доступен, как просмотрено в других местах в Интернете:
Введите один из адресов, которые вы получаете в своем веб -браузере. Это должно перенести вас в nginx’Страница по умолчанию по умолчанию:
http: //server_domain_or_ip
Если вы видите вышеуказанную страницу, вы успешно установили nginx.
Шаг 2: Установите MySQL для управления данными сайта
Теперь, когда у нас есть веб -сервер, нам нужно установить MySQL, систему управления базами данных, для хранения и управления данными для нашего сайта.
Вы можете легко установить это, набрав:
Вам будет предложено предоставить корневой (административный) пароль для использования в системе MySQL.
Программное обеспечение для базы данных MySQL теперь установлено, но его конфигурация еще не совсем завершена.
Чтобы обеспечить установку, мы можем запустить простой скрипт безопасности, который спросит, хотим ли мы изменить некоторые небезопасные значения по умолчанию. Начните сценарий с ввода:
Вас попросят ввести пароль, который вы установили для корневой учетной записи MySQL. Далее вам будет спросить, хотите ли вы настроить плагин проверки пароля .
Предупреждение: Включение этой функции – это что -то вроде суждения. Если включено, пароли, которые Дон’T Match Указанные критерии будут отклонены MySQL с ошибкой. Это вызовет проблемы, если вы используете слабый пароль в сочетании с программным обеспечением, которое автоматически настраивает учетные данные пользователя MySQL, такие как пакеты Ubuntu для PhpMyAdmin. Безопасно оставить проверку отключена, но вы всегда должны использовать сильные, уникальные пароли для учетных данных базы данных.
Отвечать у за да, или что -нибудь еще, чтобы продолжить, не включив.
Плагин проверки пароля можно использовать для тестирования паролей и улучшения безопасности. Он проверяет силу пароля и позволяет пользователям устанавливать только те пароли, которые достаточно безопасны. Хотели бы вы настроить плагин с паролем? Нажмите y | y для да, любая другая клавиша для нет:
Если вы’VE включена проверка, вы’Буду попросить выбрать уровень проверки пароля. Имейте в виду, что если вы войдете 2, Для наиболее сильного уровня вы получите ошибки при попытке установить любой пароль, который не содержит чисел, верхних и строчных букв и специальных символов, или который основан на общих словаре словаря.
Существует три уровня политики проверки пароля: низкая длина> = 8 средней длины> = 8, цифровой, смешанный корпус и специальные символы сильная длина> = 8, числовой, смешанный корпус, специальные символы и файл словаря, пожалуйста, введите 0 = низкий, 1 = средний и 2 = сильный: 1
Если вы включили проверку пароля, вы’LL будет показана сила пароля для существующего пароля root и спросил вас, хотите ли вы изменить этот пароль. Если вы довольны своим текущим паролем, введите не для “нет” По приглашению:
Использование существующего пароля для root. Расчетная сила пароля: 100 Измените пароль для root ? ((Нажмите y | y для да, любая другая клавиша для нет): не
Для остальных вопросов вы должны нажать У и ударить Входить Ключ в каждой подсказке. Это удалит некоторых анонимных пользователей и тестовой базы данных, отключите удаленные корневые логики и загрузит эти новые правила, чтобы MySQL немедленно уважал изменения, которые мы внесли.
На этом этапе теперь настроена ваша система базы данных, и мы можем двигаться дальше.
Шаг 3: Установите PHP для обработки
Теперь у нас установлен NGINX для обслуживания наших страниц и MySQL, установленных для хранения и управления нашими данными. Тем не менее, мы все еще не надеемся’T есть все, что может генерировать динамический контент. Мы можем использовать PHP для этого.
Поскольку Nginx не содержит собственную обработку PHP, как некоторые другие веб-серверы, нам нужно будет установить PHP-FPM, которая означает “Fastcgi Process Manager”. Мы сообщим Nginx передать запросы PHP в это программное обеспечение для обработки.
Мы можем установить этот модуль, а также получить дополнительный вспомогательный пакет, который позволит PHP общаться с бэкэнд на нашей базе данных. Установка привлечет необходимые файлы PHP Core. Сделайте это, набрав:
Настройте процессор PHP
Теперь у нас установлены компоненты PHP, но мы должны внести небольшое изменение конфигурации, чтобы сделать нашу настройку более безопасной.
Откройте основной файл конфигурации PHP-FPM с привилегиями root:
В этом файле мы ищем параметр, который устанавливает CGI.fix_pathinfo . Это будет прокомментировано с полуколонином (;) и установлено на “1” по умолчанию.
Это чрезвычайно небезопасная настройка, потому что он говорит PHP попытаться выполнить ближайший файл, который он может найти, если не может быть найден запрошенный файл PHP. Это в основном позволит пользователям создавать запросы PHP таким образом, чтобы они могли выполнять сценарии, которые они не должны’t можно выполнить.
Мы изменим оба этих условия, не расстроив линии и установив ее на “0” так:
/и т. Д./PHP/7.0/fpm/php.INI
CGI.fix_pathinfo = 0
Сохраните и закройте файл, когда вы закончите.
Теперь нам просто нужно перезагрузить наш процессор PHP, набрав:
Это будет реализовать изменение, которое мы внесли.
Шаг 4: Настройте Nginx для использования процессора PHP
Теперь у нас установлены все необходимые компоненты. Единственное изменение конфигурации, которое нам все еще нужно, – это сказать Nginx использовать наш процессор PHP для динамического содержания.
Мы делаем это на уровне блока сервера (блоки сервера аналогичны Apache’S Виртуальные хосты). Откройте файл конфигурации блока блока сервера по умолчанию, набрав:
В настоящее время с удаленными комментариями файл блока сервера Nginx по умолчанию выглядит следующим образом:
/etc/nginx/sites-vailable/default
сервер < listen 80 default_server; listen [::]:80 default_server; root /var/www/html; index index.html index.htm index.nginx-debian.html; server_name _; location / < try_files $uri $uri/ =404; >>
Нам нужно внести некоторые изменения в этот файл для нашего сайта.
- Во -первых, нам нужно добавить индекс.PHP в качестве первого значения нашей директивы по индексу, так что файлы с именем индекса.PHP обслуживается, если доступно, когда запрошен каталог.
- Мы можем изменить директиву Server_name, чтобы указать на наш сервер’S доменное имя или публичный IP -адрес.
- Для фактической обработки PHP нам просто нужно расстроить сегмент файла, который обрабатывает запросы PHP, удаляя символы фунта (#) перед каждой строкой. Это будет место ~ \.PHP $ Location Block, включенный FASTCGI-PHP.Conf Snippet и гнездо, связанный с PHP-FPM .
- Мы также будем расстроить блок местоположения, связанный с .Файлы HTACCESS с использованием того же метода. Nginx делает’t обрабатывать эти файлы. Если какой -либо из этих файлов попадет в корень документа, они не должны служить посетителям.
Изменения, которые вам нужно внести в красный в тексте ниже:
/etc/nginx/sites-vailable/default
сервер < listen 80 default_server; listen [::]:80 default_server; root /var/www/html; index индекс.PHP индекс.HTML -индекс.HTM Индекс.Nginx-дебиан.HTML; имя сервера server_domain_or_ip; расположение / < try_files $uri $uri/ =404; >Место ~ \.PHP $ Включите фрагменты/FASTCGI-PHP.конф; FASTCGI_PASS UNIX:/RUN/PHP/PHP7.0-FPM.носок; > Место ~ /\.ht отрицать все; > >
Когда ты’Внесли вышеуказанные изменения, вы можете сохранить и закрыть файл.
Проверьте свой файл конфигурации на наличие синтаксических ошибок, набрав:
Если какие -либо ошибки сообщаются, вернитесь назад и проверьте свой файл, прежде чем продолжить.
Когда вы будете готовы, перезагрузите Nginx, чтобы внести необходимые изменения:
Шаг 5: Создайте файл PHP для проверки конфигурации
Ваш стек LEMP теперь должен быть полностью настроен. Мы можем проверить это, чтобы подтвердить, что Nginx может правильно рутать .PHP файлы в наш процессор PHP.
Мы можем сделать это, создав тестовый файл PHP в нашем корне документа. Откройте новый файл с названием Info.PHP в вашем документе корень в вашем текстовом редакторе:
Введите или вставьте следующие строки в новый файл. Это действительный код PHP, который вернет информацию о нашем сервере:
/var/www/html/info.PHP
Когда вы закончите, сохраните и закройте файл.
Теперь вы можете посетить эту страницу в своем веб -браузере, посетив свой сервер’S -имя доменного или публичного IP -адреса с последующим /информацией.PHP:
http: //server_domain_or_ip/Информация.PHP
Вы должны увидеть веб -страницу, которая была сгенерирована PHP с информацией о вашем сервере:
Если вы видите страницу, которая выглядит так, вы’ve Успешная настройка PHP -обработка с Nginx.
После проверки того, что nginx правильно отображает страницу, она’Лучше всего удалить созданный вами файл, поскольку он может дать несанкционированным пользователям некоторые намеки на вашу конфигурацию, которые могут помочь им попытаться прорваться. Вы всегда можете восстановить этот файл, если он вам понадобится позже.
Пока удалите файл, набрав:
Заключение
Теперь у вас должен быть настройка стека LEMP на вашем Ubuntu 16.04 Сервер. Это дает вам очень гибкую основу для обслуживания веб -контента для ваших посетителей.
Спасибо за обучение с сообществом DigitaloCean. Ознакомьтесь с нашими предложениями для вычисления, хранения, сети и управляемых баз данных.