З точки зору управління веб-серверами може виникнути багато неприємних сюрпризів. Особливо при переході від старішої версії операційної системи до нової. Доступно для обох Ubuntu і CentOS.
На CentOS 5 рік, CentOS 7 багато чого змінилося на краще. Основний акцент був зроблений на безпеці та стабільності. Для linux для новачків або для користувачів, які не знають про нові сервери та служби, що стосуються адміністрування веб-хостинг, маленькі новини можуть дати вам головні болі.
Одна з найпоширеніших помилок, що виникають під час встановлення LEMP (Linux, NGINX, MySQL, PHP) дозволу безпеки та обслуговування встановлений в операційній системі CentOS 7.
Неможливість запустити сервіс NGINX, навіть якщо все виглядає добре налаштованим з точки зору PHP-FPM і NGINX.
restart nginx
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
У нас є такі деталі, але вони не допомагають нам.
systemctl status nginx.service
● nginx.service - The nginx HTTP and reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Fri 2019-03-08 06:57:41 UTC; 17s ago
Process: 4405 ExecReload=/bin/kill -s HUP $MAINPID (code=exited, status=0/SUCCESS)
Process: 4704 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
Process: 4766 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=1/FAILURE)
Process: 4764 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
Main PID: 4706 (code=exited, status=0/SUCCESS)
Mar 08 06:57:40 srv.xsystem.dev systemd[1]: Starting The nginx HTTP and reverse proxy server...
Mar 08 06:57:41 srv.xsystem.dev nginx[4766]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Mar 08 06:57:41 srv.xsystem.dev nginx[4766]: nginx: [emerg] open() "/srv/www/web.dev/logs/access.log" failed (13: Permission denied)
Mar 08 06:57:41 srv.xsystem.dev nginx[4766]: nginx: configuration file /etc/nginx/nginx.conf test failed
Mar 08 06:57:41 srv.xsystem.dev systemd[1]: nginx.service: control process exited, code=exited status=1
Mar 08 06:57:41 srv.xsystem.dev systemd[1]: Failed to start The nginx HTTP and reverse proxy server.
Mar 08 06:57:41 srv.xsystem.dev systemd[1]: Unit nginx.service entered failed state.
Mar 08 06:57:41 srv.xsystem.dev systemd[1]: nginx.service failed.
Однак ми розуміємо, що доступ до служби «nginx» заблоковано CentOS 7.
Вирішення проблеми "nginx: [emerg] open ()" шлях "не вдався (13: дозвіл відмовлено)"
Покращена безпека Linux (SELinux) – це модуль, який найчастіше активується під час встановлення CentOS 7 або інші дистрибутиви Linux. Цей модуль пропонує декілька засоби контролю і контроль доступу на рівні сервера, будучи гарною охороною, коли справа доходить до цього безпеки та цілісності, Однак, може обмежувати привілеї важливих послуг та додатків, встановлених в системі.
Просте рішення вищевказаної проблеми - вимкнути його SELinux.
Як ми його відключаємо SELinux на CentOS 7
1. Перш за все, перевірте, чи включений цей модуль у системі, виконавши команду “sestatus”.
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
2. Якщо послугу ввімкнено, запустіть командний рядок: "setenforce 0", а потім перейдіть та відредагуйте файл “/etc/selinux/config”.
Тут ви встановлюєте: SELINUX=disabled.
3. Після збереження наведеного вище файлу перезапустіть сервер.
Все має працювати гладко.
Я кілька днів намагався вирішити проблему, дуже дякую за ваш внесок !!