[FIX] NGINX啟動失敗,CentOS 7-nginx:[emer] open()“路徑”失敗(13:權限被拒絕)

在管理Web服務器方面,可能會出現許多令人不快的意外情況。 特別是從較舊版本的操作系統遷移到新版本時。 對兩者都有價值 Ubuntu的CentOS的.

從CentOS 5到 CentOS 7的 很多事情都變好了。 重點是安全性和穩定性。 對於新手linux,或者對於不了解特定於管理的服務器和服務的新用戶的用戶 虛擬主機,小消息可以讓你頭疼。

安裝LEMP(Linux,NGINX,MySQL,PHP)時遇到的最常見錯誤之一 安全和服務權限 安裝在CentOS 7操作系統上。

即使一切似乎都在PHP-FPM和NGINX方面配置得很好,也無法啟動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.

但是,我們了解到,在CentOS 7上執行操作的“ nginx”服務被阻止了。

解決問題“ nginx:[emer] open()”路徑“失敗(13:權限被拒絕)”

安全性增強的Linux (SELinux的)是一個最常安裝CentOS 7或其他Linux發行版的模塊。 該模塊提供多種功能 控制工具和控制訪問 在服務器級別,在談到時是一個好的守衛 安全和誠信。 然而, 可能會限制重要服務和應用程序的權限,安裝在系統上。

解決上述問題的簡單方法是禁用SELinux。

如何在CentOS 7上停用SELinux

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.保存以上文件後, restart你有服務器。

一切都應該順利進行。

對技術充滿熱情,我喜歡測試和編寫有關操作系統的教程 macOS,Linux, Windows, 關於 WordPress、WooCommerce 和 LEMP Web 服務器配置(Linux、NGINX、MySQL 和 PHP)。 我寫在 StealthSettings.com 自 2006 年以來,幾年後我開始撰寫 iHowTo.Tips 教程和有關生態系統中設備的新聞 Apple: iPhone,iPad, Apple 手錶,HomePod, iMac, MacBook、AirPods 和配件。

發表評論