วิธีแก้ไข 'ถูกห้าม - คุณไม่ได้รับอนุญาตให้เข้าถึง / บนเซิร์ฟเวอร์นี้' บนโดเมนหลังจากตั้งค่า Apache
Apache เป็นซอฟต์แวร์เว็บเซิร์ฟเวอร์ที่ใช้เกือบ 67% ของเว็บเซิร์ฟเวอร์ทั้งหมดในโลก ซอฟต์แวร์นี้พัฒนาและจัดจำหน่ายโดย Apache Software Distribution เป็นโอเพ่นซอร์สและสามารถใช้ได้ฟรี Apache รวดเร็วปลอดภัยและเชื่อถือได้ซึ่งเป็นสาเหตุหนึ่งของความนิยม อย่างไรก็ตามเมื่อไม่นานมานี้มีผู้ใช้จำนวนมากประสบปัญหา“ห้าม - คุณไม่มีสิทธิ์เข้าถึง / บนเซิร์ฟเวอร์นี้” เกิดข้อผิดพลาดขณะพยายามตั้งค่า Apache สำหรับโดเมน
อะไรเป็นสาเหตุของข้อผิดพลาด“ Forbidden - คุณไม่มีสิทธิ์เข้าถึง / บนเซิร์ฟเวอร์นี้”
หลังจากได้รับรายงานจำนวนมากจากผู้ใช้หลายคนเราจึงตัดสินใจที่จะตรวจสอบปัญหาและคิดหาวิธีแก้ไขปัญหาอย่างสมบูรณ์ นอกจากนี้เราได้ตรวจสอบสาเหตุที่ทำให้เกิดและระบุไว้ดังต่อไปนี้
เมื่อคุณมีความเข้าใจพื้นฐานเกี่ยวกับธรรมชาติของปัญหาแล้ว เราจะดำเนินการแก้ไขต่อไป ตรวจสอบให้แน่ใจว่าได้ใช้สิ่งเหล่านี้ตามลำดับเฉพาะที่นำเสนอ
โซลูชันที่ 1: การเปลี่ยนการตั้งค่าไดเรกทอรีร่วม
การตั้งค่าบางอย่างต้องได้รับการกำหนดค่าอย่างเหมาะสมเพื่อแก้ไขปัญหานี้ ดังนั้นในขั้นตอนนี้เราจะเพิ่มคำสั่งตัวเลือกในการตั้งค่าไดเรกทอรีส่วนกลางซึ่งอยู่ในส่วน "httpd.Conf” หรือ“httpd–vhosts.Conf” ขึ้นอยู่กับผู้ใช้ สำหรับการที่:
- เมื่อคุณอยู่ใน“httpd.Conf” หรือ “ httpd-vhosts.conf”, มองหา ไดเรกทอรี การตั้งค่าควรคล้ายกับโค้ดที่ระบุด้านล่าง
ตัวเลือก FollowSymLinks AllowOverride All Order ปฏิเสธอนุญาตอนุญาตจากทั้งหมด บันทึก: เป็นไปได้ว่าโค้ดมี“ปฏิเสธ จาก ทั้งหมด” แทน“อนุญาต จาก ทั้งหมด“. เป็นสิ่งสำคัญที่คุณ แก้ไข เพื่อ“อนุญาตจาก ทั้งหมด" หรือ "จำเป็นต้อง ทั้งหมด ได้รับ” ตามที่ระบุไว้ด้านล่าง
- ให้แน่ใจว่าคุณ เพิ่ม ที่“ดัชนีตัวเลือก FollowSymLinks รวมถึง ExecCGI” เข้าไว้ในลักษณะที่คล้ายกับรหัสต่อไปนี้
#Options FollowSymLinks ดัชนีตัวเลือก FollowSymLinks รวม ExecCGI AllowOverride All Order ปฏิเสธอนุญาตอนุญาตจากทั้งหมด - ตรวจสอบ เพื่อดูว่าปัญหายังคงมีอยู่หรือไม่
- หากไม่สามารถแก้ไขปัญหาได้ให้แก้ไขโค้ดโดยลบ“อนุญาต จาก ทั้งหมด" ถึง "จำเป็นต้อง ทั้งหมด ได้รับ“.
- ตรวจสอบ เพื่อดูว่าปัญหายังคงมีอยู่หรือไม่
โซลูชันที่ 2: การเปลี่ยนสิทธิ์
เมื่อผู้ใช้เชื่อมโยง Apache กับโดเมนพวกเขาจะให้สิทธิ์แก่ซอฟต์แวร์เพื่อให้สามารถอ่านและเขียนไฟล์ได้ สิ่งสำคัญคือต้องมีการให้สิทธิ์เหล่านี้อย่างเหมาะสม ด้านล่างนี้เราจะระบุวิธีการให้สิทธิ์ที่เหมาะสม
- ตามปกติผู้ใช้ให้ สิทธิ์ ด้วยวิธีต่อไปนี้
chgrp -R www-data / ชื่อผู้ใช้ / home / Dropbox / myamazingsite / chmod -R 2750 / ชื่อผู้ใช้ / home / Dropbox / myamazingsite /
- คำสั่งเหล่านี้ไม่ถูกต้องและจำเป็นต้องแทนที่ด้วย
chgrp -R www-data / ชื่อผู้ใช้ chmod -R 2750 / ชื่อผู้ใช้
- นอกจากนี้ พึงระลึกไว้เสมอว่าคุณกำลังใช้ระดับที่ถูกต้องของ “chmod“ ใช้อันที่ให้สิทธิ์ในการอ่านแก่ผู้ใช้เช่น “chmod 755“.
- ตรวจสอบดูว่าปัญหายังคงมีอยู่หรือไม่หลังจากลองทำตามคำแนะนำแล้ว
โซลูชันที่ 3: การเพิ่มชื่อผู้ใช้
ใน "httpd.Conf“ อย่าลืมเพิ่มไฟล์ ชื่อผู้ใช้ที่แน่นอน แทนคำ “ ผู้ใช้” หรือ "กลุ่ม". ในบางกรณีการเพิ่มชื่อผู้ใช้จะช่วยแก้ปัญหาได้