Команда «swaks»
Команда swaks — это гибкий, ориентированный на транзакции инструмент SMTP с поддержкой сценариев. Расширения SMTP и функции, обрабатываемые этой командой, включают аутентификацию, TLS, конвейерную обработку и другие версии протоколов SMTP. Эта команда Linux также поддерживает различные методы передачи.
Чтобы установить этот инструмент, введите:
sudo apt install swaks
Вам необходимо подключиться к учетной записи SMTP: пользователь -au, сервер -s, адрес -t и пароль -ap. Вам также понадобится «флаг» -tls, если вы подключаетесь к порту 587. Итак, команда должна быть:
swaks --to -s smtp.gmail.com:587 -tls -au <user-account> -ap <account-password>
Заголовок «Return-Path: …»
Обычно заголовок «Return-Path: …» является важным заголовком в глазах почтовых сервисов. Установить его или в настройках php.ini, директива «sendmail_path = /usr/sbin/sendmail -t -i -f [email protected]» — если есть пользовательский php.ini, а если нет, то непосредственно в самой функции mail(); пятым параметром. В противном случае заголовок «Return-Path: …» будет равен примерно такому значению «Return-Path: <[email protected]>«. ОЧЕНЬ желательно чтобы значение заголовка «Return-Path: …» всегда совпадало с именем домена с которого отправляется письмо, независимо от значения заголовка «From: …», иначе оно может быть отправлено в «Спам» или же отклонено вовсе!
Если письмо отправляется от имени «From: …» другого отправителя (домена) и не установлен «Reply-To: …», то для ответа будет использоваться «Return-Path: …». В CMS Joomla 1.5, заголовок «Reply-To: …» устанавливается десятым параметром в функции JUtility::sendMail(); и по умолчанию при отправке ссылки другу по почте не используется в /components/com_mailto/controller.php, его нужно допиливать в ручную.
В почту отправляемую с аккаунта Gmail устанавливается только заголовок «Return-Path: …», значение которого соответствует значению заголовка «From: …», а также домену с которого оно отправлено, а по этому нет необходимости в добавлении заголовка «Reply-To: …».
У Postfix и Sendmail разный подход к «Return-Path: …». Так например в начале настройки Postfix, первое отправленное через него письмо пришло без заголовка «Return-Path: …» (или то меня проглючило, ни-ни, перепроверил же — без Return-Path) и для его появления нужно было указывать адрес возврата явно при помощи « -f«, Sendmail же вставляет заголовок «Return-Path: …» автоматически собирая его из пользователь@mydomain.com, где «пользователь» имя пользователя от которого работает Apache/PHP, а mydomain.com обычно localhost или localhost.localdomain.
Sendmail не позволяет посторонним модифицировать заголовки при помощи -fвключительно и обнаружив такую модификацию вставляет в письмо заголовок X-Authentication-Warning с сообщением типа «X-Authentication-Warning: mydomain.com: username set sender to [email protected] using -f«. Этого заголовка с предупреждением можно избежать, указав доверенных пользователей в vi /etc/mail/trusted-users
Если нужно использовать отличный от vi /etc/mail/trusted-users файл то добавьте в vi /etc/mail/sendmail.mc следующие строки:
×
Только после полного отключения блокировщика скриптов и рекламы на этом месте появится полезная подсказка/ссылка/код/пример конфигурации/etc!
Пересоберите sendmail.cf из sendmail.mc: m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf, перезапустите sendmail.
Конфиг sendmail.mc
Файл конфига /etc/mail/sendmail.mc . Сравните ваш конфиг. Должно быть как-то так.. Порядок инструкций важен!
Dnl #
include(`/etc/mail/m4/dialup.m4″)dnl
include(`/etc/mail/m4/provider.m4″)dnl
include(`/etc/mail/tls/starttls.m4″)dnl
include(`/etc/mail/sasl/sasl.m4″)dnl
FEATURE(`authinfo»,`hash /etc/mail/auth/client-info»)dnl
define(`SMART_HOST»,`smtp.gmail.com»)dnl
define(`RELAY_MAILER_ARGS», `TCP $h 587″)dnl
define(`ESMTP_MAILER_ARGS», `TCP $h 587″)dnl
dnl #
dnl # Default Mailer setup
MAILER_DEFINITIONS
MAILER(`local»)dnl
MAILER(`smtp»)dnl
define(`confAUTH_MECHANISMS», `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN»)dnl
# dnl define(`confDOMAIN_NAME», `e5530″)dnl
Применяем конфиг sendmail
Если все настроено правильно но сообщения попадают в «отложенную очередь» и не релеятся на другой SMTP:
- Проверьте ваш IP»шник в блек-листах. Проверить бан IP можно тут smart-ip.net , мой IP попал в базу spamhaus «а.
- Проверьте не блокирует ли провайдер исходящие пакеты на 25 порт.
Проблемы с Интертелекомом!
У меня так и не получилось настроить релей сообщений на GMail через sendmail на Интертелекомовском подключении — sendmail упорно стучался на 25 порт, который закрыт провайдером. Пришлось настраивать postfix .
20.3.5 /etc/mail/virtusertable
Файл virtusertable сопоставляет виртуальные почтовые домены и почтовые ящики реальным почтовым ящикам. Эти почтовые ящики могут быть локальными, удаленными, синонимами, определенными в /etc/mail/aliases, или файлами.
Example 20-3. Пример таблицы виртуального домена
В примере выше мы видим сопоставление адресов для домена example.com. Почта обрабатывается по первому совпадению с записью в этом файле. Первая запись сопоставляет адрес [email protected] локальному почтовому ящику root. Вторая запись сопоставляет [email protected] локальному почтовому ящику postmaster на хосте noc.example.net. Наконец, до этого момента адрес в домене example.com не совпал ни с одним из предыдущих, будет применено последнее сопоставление, в которому соответствует всякое другое почтовое сообщение, отправленное на любой адрес в example.com. Это сообщение будет доставлено в локальный почтовый ящик joe.
Prev | Home | Next |
Использование электронной почты | Up | Установка другой почтовой программы |
По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в . По вопросам связанным с этой документацией, пишите . По вопросам связанным с русским переводом документации, пишите в рассылку . Информация по подписке на эту рассылку находится на сайте проекта перевода.
Управление sendmail
Посмотреть всю очередь сообщений:
Sudo mailq
Посмотреть очередь сообщений по определенному адресу:
Очистить всю очередь сообщений sendmail:
Sudo rm -r /var/spool/mqueue-client/*
Очистить очередь сообщений sendmail по адресату:
#sendmail, #LAMP, #MTA
P.S. Если вы хотите изучить консоль Linux на достаточно хорошем уровне – рекомендую к прочтению свежую книгу Дениса Колисниченко «Командная строка Linux и автоматизация рутинных задач».
Вряд ли вам нужен web-сервер, который не может отправить почту с вашего сайта. Ниже простой способ быстро развернуть sendmail в качестве MTA (Mail Transfer Agent), отправляющего почту для сайта.
Для начала установка
Sudo apt-get install sendmail
Второе и самое главное — правильная настройка самого хоста. Почтовику требуется чётко знать какое DNS FQDN имя у хоста и что оно существует на просторах мировой сети.
Предположим, что сервер, на котором работает sendmail имеет IP адрес 123.123.123.123
Также у нас есть доменное имя domainame.com, которое правильно делегировано на IP адрес сервера.
Редактируем файл /etc/hosts, чтобы сервер сам знал своё DNS имя (естественно, что оно должно быть правильным и реальным)
Sudo nano -w /etc/hosts
Вторая строка, которую стоит дописать и есть описание доменного имени сервера, его сопоставление с реальным IP адресом хоста и внутренним системным названием:
127.0.0.1 localhost 123.123.123.123 box1.domainname.com your-web-server
После чего нужно внести изменение в файл /etc/hostname
Sudo nano -w /etc/hostname
И вписать туда правильное имя сервера, которое было вписано в /etc/hosts в нашем примере — это your-web-server.
Содержимое файла /etc/hostname после редактирования:
Your-web-server
После этих действий нужно перезагрузить сервер или выполнить:
/etc/init.d/hostname restart И выполнить 2 команды: hostname hostname -f
Если всё правильно, система должна выдать одинаковые имена в обоих случаях: your-web-server
Советую проверить отправку письма таким образом
Настройка php.ini
Находим и редактируем следующую строчку
Проверка функции mail()
Настройка завершена я надеюсь у вас получилось настроить Sendmail на Ubuntu
Она появилась ещё в 1983 году, но активно используется и по сей день. Среди ключевых особенностей – поддержка многими платформами, которые существуют сегодня, а также бесплатность. Приложение поставляется вместе с открытым исходным кодом. Это значит, что каждый желающий может добавить в него свою функциональность, или же изменить по желанию. В операционной системе Ubuntu, Sendmail, настройка которой выполняется благодаря командной строке Linux, прижилась благодаря хорошей поддержке и богатым возможностям.
Процессор сообщение – Sendmail – получил широкое распространение в бизнес сфере.
На сегодня достаточно распространён «процессор сообщений» Сендмейл Sentrion, который был создан с учётом нужд крупных компаний. Его отличительные черты – высокая производительность и хорошая интегрируемость со всеми бизнес-процессами. Sentrion предлагает наряду с новыми технологиями использовать и устаревшие приложения, которые хорошо прижились. Также приложение достаточно дружелюбно, чтобы подходить домашним пользователям .
Q3.27 — Как мне предотвратить ошибки Relaying Denied для моих клиентов?
Вы должны добавить полностью-квалифицированное имя хоста и-или АДРЕС IP каждого клиента к классу R,
который устанавливает набор допустимых
релеев доменов. Для версии 8.8. X, это обычно определено ; для 8.9. X, это — обычно . Нота: если ваша
DNS (ДОМЕННАЯ СИСТЕМА ИМЕН) проблематична, Вы должны перечислить
IP-адреса (например, 1.2.3.4); вообще, однако, в этом не должно быть необходимости.
Как только вы модифицировали соответствующий файл,
сделайте вашему sendmail демону, и
Все должно быть OK.
Расширенные подробности доступны на
нашей странице Allowing
controlled SMTP relaying in Sendmail 8.9.
Шаг 1 — Установка Postfix
Postfix включен в репозиторий Ubuntu по умолчанию, так что вы можете установить его с помощью APT.
Для начала обновите локальный кэш пакетов :
Затем установите пакет с помощью следующей команды
Обратите внимание, что мы передаем переменную среды в эту команду установки. В связи с этим, процедура установки предложит вам настроить некоторые дополнительные опции:. Процедура установки откроет серию интерактивных диалогов
Для целей данного обучающего модуля введите в диалогах следующие данные:
Процедура установки откроет серию интерактивных диалогов. Для целей данного обучающего модуля введите в диалогах следующие данные:
- General type of mail configuration?: Для данного параметра выберем пункт Internet Site, соответствующий потребностям нашей инфраструктуры.
- System mail name: это базовый домен, используемый для построения корректного адреса электронной почты, когда имеется только часть адреса с именем учетной записи. Допустим, имя хоста вашего сервера . Возможно вы захотите задать для системной почты имя . В этом случае для имени пользователя Postfix будет использовать адрес .
- Root and postmaster mail recipient: это учетная запись Linux, на которую будет перенаправляться почта, адресованная и . Используйте для этой цели свою основную учетную запись. В данном примере это имя пользователя sammy.
- Other destinations to accept mail for: определение получателей почты, которых будет принимать этот экземпляр Postfix. Если вам потребуется добавить любые другие домены, для которых этот сервер будет получать почту, добавьте их здесь. В противном случае значений по умолчанию будет достаточно.
- Force synchronous updates on mail queue?: поскольку вы вероятно используете журнальную файловую систему, выберите No.
- Local networks: это перечень локальных сетей, для которых ваш почтовый сервер настроен как реле пересылки сообщений. Значение по умолчанию подойдет для большинства случаев. Если вы пожелаете изменить его, постарайтесь максимально ограничить диапазон сетей.
- Mailbox size limit: используется для ограничения размера сообщений. Значение «» отключает любые ограничения размера.
- Local address extension character: символ, используемый для отделения обычной части адреса от расширения (используется для создания динамических псевдонимов). Для этого обучающего модуля подойдет значение по умолчанию «».
- Internet protocols to use: укажите, нужно ли ограничивать версии протокола IP, поддерживаемые Postfix. Для целей данного обучающего модуля выберите вариант «all».
Приведем настройки, использованные в этом руководстве:
- General type of mail configuration?: Internet Site
- System mail name: (не )
- Root and postmaster mail recipient: имя пользователя основной учетной записи Linux (в наших примерах sammy)
- Other destinations to accept mail for:
- Force synchronous updates on mail queue?: No
- Local networks:
- Mailbox size limit:
- Local address extension character:
- Internet protocols to use: all
Примечание. Если впоследствии вам потребуется изменить эти настройки, введите команду:
Для параметров будут указаны заданные ранее значения.
После завершения процедуры установки можно внести некоторые изменения в конфигурацию Postfix.
Отправка почты
В зависимости от дистрибутива, который вы используете, может понадобиться установить дополнительные пакеты, такие как mailutils, чтобы команда mail нормально работала.
Пользователи Debian/Ubuntu могут воспользоваться командой apt-get:
# apt-get install mailutils
Пользователи Fedora / CentOS / Red Hat Enterprise Linux (RHEL) могут сделать это с помощью yum:
# yum install mailutils
Теперь команда mail должна быть готова к работе.
Выполните приведенную ниже команду, заменив «[email protected]» на свой адрес электронной почты. Опция s задает тему письма.
$ mail -s "Hello World" [email protected]
Теперь вы можете вводить текст письма. Когда закончите, нажмите «control-D» в начале новой строки.
# mail -s "This is the subject" [email protected] Cc: Hi Silver How are you doing Hope its going fine. Bye
Вы отправили первое письмо из командной строки. Содержимое письма можно вставить из файла.
В некоторых дистрибутивах командная оболочка сначала запросит в интерактивном режиме ввод других полей, таких как «Cc» (Carbon copy). Просто нажимайте «Enter», чтобы пропустить этот этап. Когда вы введете адрес или адреса электронной почты, необходимо нажать «Enter», чтобы перейти на новую строку, к телу письма.
После нажатия Ctrl+D вы возвращаетесь в командную строку без каких либо дополнительных оповещений. Однако ваше письмо было отправлено.
Интересно, что если вы ничего не введете в теле письма и нажмете Ctrl+D, команда mail отреагирует на это:
# mail -s "This is the subject" [email protected] Cc: Null message body; hope that's ok
Если тело письма хранится у нас в отдельном файле, мы можем напрямую использовать его для отправки письма. Это полезно при вызове команды mail из скриптов, или других программ, написанных, например, на perl или php.
$ mail -s "Hello World" [email protected] < /home/user/mailcontent.txt
Или быстрая отправка письма одной строкой:
# echo "This is the message body" | mail -s "This is the subject" [email protected]
Другие полезные параметры команды mail:
Ниже пример использования этих опций:
$ mail -s "Hello World" [email protected] -c [email protected] -b [email protected]
Возможно задавать несколько получателей, перечисляя их адреса через запятую.
$ mail -s "Hello World" [email protected],[email protected]
Указать адрес отправителя тоже несложно, но здесь есть своя хитрость. После отправляемого письма необходимо добавить перед своим адресом следующую последовательность символов:
(двойное тире) (пробел) (одинарное тире) (без пробела) f
Ниже пример:
$ mail -s "Hello World" [email protected] -- -f [email protected]
Однако приведенная выше последовательность может работать в centos, но не в debian или ubuntu. В этих системах используется альтернативный синтаксис:
# echo "This is the message body" | mail -s "This is the subject" [email protected] -aFrom:[email protected]
Опция a в целом добавляет дополнительные заголовки. Чтобы задать с ее помощью отправителя, используется следующий синтаксис:
# echo "This is the message body" | mail -s "This is the subject" [email protected] -aFrom:Blogger\<[email protected]\>
Обратите внимание, что бы экранируем угловые скобки, так как они могут иметь свое назначение для командной оболочки
PostfixAdmin
PostfixAdmin является PHP на основе веб – интерфейса, который позволяет управлять базой данных, и использует postfix для виртуальных доменов и пользователей. Последняя версия PostfixAdmin, 3 -й версии, поддерживает MySQL, PostgreSQL и базу данных SQLite. В этом руководстве мы будем использовать последнюю.
Скачайте архив PostfixAdmin из SourceForge и распакуйте его в каталог /var/www/:
wget -q -O - "http://downloads.sourceforge.net/project/postfixadmin/postfixadmin/postfixadmin-3.0/postfixadmin-3.0.tar.gz" | sudo tar -xzf - -C /var/www
Откройте файл конфигурации почты и измените следующие значения:
sudo nano /var/www/postfixadmin-3.0/config.inc.php
$CONF = true; $CONF = 'sqlite'; $CONF = '/var/vmail/postfixadmin.db'; // $CONF = 'localhost'; // $CONF = 'postfix'; // $CONF = 'postfixadmin'; // $CONF = 'postfix'; $CONF = 'NO'; $CONF = 'YES';
sudo chown -R www-data: /var/www/postfixadmin-3.0
Создание базы данных SQLite:
sudo touch /var/vmail/postfixadmin.db sudo chown vmail:mail /var/vmail/postfixadmin.db sudo usermod -a -G mail www-data
Для заполнения базы данных перейдите к и вы должны увидеть что – то вроде этого:
Testing database connection – OK – sqlite://:xxxxx@//var/vmail/postfixadmin.db
Создайте нового пользователя с правами администратора:
bash /var/www/postfixadmin-3.0/scripts/postfixadmin-cli admin add admin@your_domain.ru --password strong_password --password2 strong_password --superadmin 1 --active 1
Настройка Dovecot
Установка Postfix Dovecot в связке используется чаще всего для веб-сайтов. Dovecot — это IMAP/POP3 сервер, который позволяет пользователям работать с почтой через такие клиенты, как Thunderbird. Для начала нам нужно создать группу и пользователя для обработки электронных адресов, поскольку наши ящики не привязаны к системе:
Настройки Dovecot распределены по нескольким файлам. Сначала приведите файл /etc/dovecot/dovecot.conf к такому виду:
Затем разрешим аутентификацию пользователей через базу данных MySQL в файле /etc/dovecot/conf.d/10-auth.conf:
В следующем файле укажем параметры доступа к базе данных:
Мы будем сохранять почту в папке /home/vmail/домен/имя/Maildir. Вам нужно создать папку для домена, если она не существует:
Дальше, скажем программе, что для каждого пользователя нужно создавать отдельные почтовые ящики:
И наконец, приведите базовые настройки в 10-master.conf к такому виду:
Для шифрования будем использовать самоподписанный сертификат:
Сертификаты вам придется создать отдельно, для этого выполните команду:
Директории /etc/pki/dovecot/certs и private должны существовать, вы можете использовать другое расположение, но тогда вам нужно будет изменить адреса сертификатов в файлах настройки Postfix и Dovecot. Осталось указать пароль и другие параметры доступа к базе данных mysql:
Еще нам может понадобиться информация из логов, поэтому:
После изменения конфигурации перезапустите dovecot:
Установка и настройка Nginx
Если у вас нет веб-сервера, установленного на вашем компьютере, установите Nginx из официальных репозиториев Ubuntu:
sudo apt-get -y install nginx
Создание нового блока сервера Nginx со следующим содержанием:
sudo nano /etc/nginx/sites-available/postfixadmin.your_domain.ru
server { listen 80; server_name postfixadmin.your_domain.ru; return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name postfixadmin.your_domain.ru; root /var/www/postfixadmin-3.0; index index.php; charset utf-8; ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem; ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key; ssl_protocols TLSv1.2; ssl_ciphers "EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4"; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; ssl_ecdh_curve secp521r1; location / { try_files $uri $uri/ index.php; } location ~* \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; include fastcgi_params; fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_buffer_size 16k; fastcgi_buffers 4 16k; } }
Активируйте блок сервера, создав символическую ссылку:
sudo ln -s /etc/nginx/sites-available/postfixadmin.your_domain.ru /etc/nginx/sites-enabled/postfixadmin.your_domain.ru
Проверьте конфигурацию Nginx и перезапустите Nginx:
sudo nginx -t sudo service nginx restart
Установка PHP и дополнительных расширений
Проверить доступную для установки версию PHP можно командой:
-
Ubuntu и Debian:
apt show php
-
CentOS:
yum info php
Знать её нужно для корректной установки нужных компонентов на следующем шаге (для Ubuntu и Debian). В примере версия PHP — 7.4. Вам при установке нужно заменить её в команде на ту, которая доступна для вашей операционной системы.
Если версия вам подходит, после этого можно перейти к установке:
-
Ubuntu и Debian:
apt -y install php7.4 php7.4-fpm php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline php7.4-mbstring php7.4-xml php7.4-gd php7.4-curl php7.4-zip
-
CentOS:
yum -y install php-fpm php-mysqlnd php-cli php-json php-mbstring php-xml php-gd php-curl php-zip
Дополнительные расширения PHP, доступные для установки, можно посмотреть командой:
-
Ubuntu и Debian:
Для конкретной версии:
apt-cache search php | egrep ‘7.4’ | grep module
Версии по умолчанию:
apt-cache search php | egrep ‘module’ | grep default
-
CentOS:
yum search php | grep module
Установить выбранный модуль можно командой:
-
Ubuntu и Debian:
apt -y install php7.4-soap
-
CentOS:
yum -y install php-soap
После установки PHP запускаем менеджер процессов php-fpm и добавляем его в автозагрузку:
-
Ubuntu и Debian:
systemctl start php7.4-fpm && systemctl enable php7.4-fpm
-
CentOS:
systemctl start php-fpm && systemctl enable php-fpm
Проверим установленную версию PHP:
php -v
После установки PHP нужно отредактировать настройки php-fpm по умолчанию, предназначенные для веб-сервера Apache:
-
Ubuntu и Debian:
nano /etc/php/7.4/fpm/pool.d/www.conf
-
CentOS:
vim /etc/php-fpm.d/www.conf
В файле ищем блок кода Unix user/group of processes и меняем apache на www-data для Debian и Ubuntu и nginx для CentOS.
Остался последний штрих. Открываем для редактирования конфигурационный файл PHP:
-
Ubuntu и Debian:
nano /etc/php/7.4/fpm/php.ini
-
CentOS:
vim /etc/php.ini
В файле ищем раздел Paths and Directories (он почти в самом конце файла), внутри находим параметр cgi.fix_pathinfo. Нужно раскомментировать его (удалить «;» в начале строки) и изменить значение с «1» на «0».
После этого сохраняем файл и перезапускаем веб-сервер, чтобы новые настройки применились:
-
Ubuntu и Debian:
systemctl reload nginx && systemctl reload php7.4-fpm
-
CentOS:
systemctl reload nginx && systemctl reload php-fpm
Настройка базового конфигурационного файла для сайта
Чтобы веб-сервер мог корректно обрабатывать запросы к сайтам, осталось добавить базовый конфигурационный файл вместо установленного по умолчанию. Для этого:
-
Удаляем конфигурационный файл default, использующийся по умолчанию, и создаём его замену, default.conf:
-
Ubuntu и Debian:
unlink /etc/nginx/sites-enabled/default touch /etc/nginx/sites-available/default.conf ln /etc/nginx/sites-available/default.conf /etc/nginx/sites-enabled/default.conf
-
CentOS:
touch /etc/nginx/conf.d/default.conf
-
-
Откроем новый файл в консольном текстовом редакторе и добавим туда содержимое:
-
Ubuntu и Debian:
nano /etc/nginx/sites-available/default.conf
-
CentOS:
vim /etc/nginx/conf.d/default.conf
Скопируйте в файл следующий блок настроек:
-
Ubuntu и Debian:
server { listen 80; listen :80; server_name _; root /usr/share/nginx/html/; index index.php index.html index.htm index.nginx-debian.html; location / { try_files $uri $uri/ =404; } location ~ .php$ { fastcgi_pass unix:/run/php/php7.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; include snippets/fastcgi-php.conf; } location ~ /.ht { access_log off; log_not_found off; deny all; } }
-
CentOS:
server { listen 80; listen :80; server_name _; root /usr/share/nginx/html/; index index.php index.html index.htm index.nginx-debian.html; location / { try_files $uri $uri/ =404; } location ~ .php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /.ht { access_log off; log_not_found off; deny all; } }
-
Осталось проверить, что в конфигурационном файле отсутствуют ошибки, и перезапустить nginx для применения настроек:
nginx -t