[FIX] فشل بدء NGINX CentOS 7 - nginx: [يخرج] فتح () فشل "المسار" (13: تم رفض الإذن)

من حيث إدارة خوادم الويب ، يمكن أن تحدث العديد من المفاجآت غير السارة. خاصة عند الانتقال من إصدار أقدم من نظام التشغيل إلى إصدار جديد. Vsalable لكل منهما أوبونتو ولل 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: [ظهور] فتح () فشل" المسار "(13: تم رفض الإذن)"

الأمن - تعزيز لينكس (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. بعد حفظ الملف أعلاه ، restartلديك الخادم.

كل شيء يجب أن يعمل بسلاسة.

شغوفًا بالتكنولوجيا ، أحب اختبار وكتابة برامج تعليمية حول أنظمة التشغيل macOS، لينكس ، Windows، حول تهيئة خادم الويب WordPress و WooCommerce و LEMP (Linux و NGINX و MySQL و PHP). أكتب على StealthSettings.com منذ عام 2006 ، وبعد بضع سنوات بدأت الكتابة على iHowTo. نصائح تعليمية وأخبار حول الأجهزة في النظام البيئي Apple: iPhone، اى باد، Apple مشاهدة ، HomePod ، iMac, MacBook، AirPods وملحقاتها.

اترك تعليق