[إصلاح] فشل بدء 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: تم رفض الإذن)"

معزز بالأمان Linux (SELinux) هي وحدة يتم تنشيطها غالبًا مع التثبيت CentOS 7 أو توزيعات أخرى من Linux. تقدم هذه الوحدة عدة أدوات التحكم والوصول إلى التحكم على مستوى الخادم ، كونه حارس جيد عندما يتعلق الأمر الأمن والنزاهة. ومع ذلك، قد تحد من امتيازات الخدمات والتطبيقات الهامة، مثبتة على النظام.

الحل البسيط للمشكلة المذكورة أعلاه هو تعطيل SELinux.

كيفية تعطيل SELinux pe 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. بعد حفظ الملف أعلاه ، أعد تشغيل الخادم.

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

تم إجراء آخر تعديل على هذا المنشور في 24 مايو 2021 18:57

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

عرض التعليقات (1)