ฉันติดตั้ง Nginx บน Centos 6 และฉันพยายามตั้งค่าโฮสต์เสมือน ปัญหาที่ฉันพบคือฉันไม่สามารถหา/etc/nginx/sites-available
ไดเรกทอรีได้
มีบางอย่างที่ฉันต้องทำเพื่อสร้างมันขึ้นมาไหม? ฉันรู้ว่า Nginx เปิดใช้งานแล้วเพราะฉันสามารถเรียกดูได้
ฉันติดตั้ง Nginx บน Centos 6 และฉันพยายามตั้งค่าโฮสต์เสมือน ปัญหาที่ฉันพบคือฉันไม่สามารถหา/etc/nginx/sites-available
ไดเรกทอรีได้
มีบางอย่างที่ฉันต้องทำเพื่อสร้างมันขึ้นมาไหม? ฉันรู้ว่า Nginx เปิดใช้งานแล้วเพราะฉันสามารถเรียกดูได้
คำตอบ:
ดีฉันคิดว่า nginx โดยตัวของมันเองไม่ได้มีในการตั้งค่าเพราะแพคเกจดูแลรักษา Ubuntu ทำมันเป็นแบบแผนเพื่อเลียนแบบการตั้งค่า Apache ของ Debian คุณสามารถสร้างมันขึ้นมาเองได้ถ้าคุณต้องการเลียนแบบการตั้งค่าเดียวกัน
สร้าง/etc/nginx/sites-available
และ/etc/nginx/sites-enabled
จากนั้นแก้ไขhttp
บล็อกภายใน/etc/nginx/nginx.conf
และเพิ่มบรรทัดนี้
include /etc/nginx/sites-enabled/*;
แน่นอนว่าไฟล์ทั้งหมดจะอยู่ข้างในsites-available
และคุณต้องสร้าง symlink sites-enabled
สำหรับไฟล์เหล่านั้นสำหรับผู้ที่คุณต้องการเปิดใช้งาน
sudo ln -s /etc/nginx/sites-available/test.conf /etc/nginx/sites-enabled/test.conf
ไม่แน่ใจว่าทำไมเส้นทางแบบเต็มสร้างความแตกต่าง: /
หากคุณต้องการแนวทางที่ตรงกว่าวิธีที่ไม่ยุ่งกับ symlinking ระหว่าง/etc/nginx/sites-available
และ/etc/nginx/sites-enabled
ให้ทำดังต่อไปนี้:
/etc/nginx/nginx.conf
include /etc/nginx/conf.d/*.conf;
สิ่งนี้บอก nginx เพื่อดึงไฟล์ใด ๆ ในconf.d
ไดเรกทอรีที่ลงท้าย.conf
ด้วย (ฉันรู้ว่า: มันแปลกที่ไดเรกทอรีสามารถมี.
ในนั้น)conf.d
ไดเรกทอรีหากยังไม่มีอยู่ (ตามเส้นทางในขั้นตอนที่ 3) อย่าลืมให้สิทธิ์ / ความเป็นเจ้าของที่ถูกต้อง มีแนวโน้มที่จะรูทหรือ www-data/etc/nginx/sites-available
) conf.d
ลงในไดเรกทอรี.conf
ไฟล์ใด ๆที่คุณใส่ลงในconf.d
ไดเรกทอรีจากที่นี่ออกจะใช้งานได้ตราบเท่าที่คุณโหลด / รีสตาร์ท nginx หลังจาก
หมายเหตุ: คุณสามารถใช้วิธี+ conf.d
และพร้อมกันหากคุณต้องการ ผมชอบที่จะทดสอบบนกล่อง dev ของฉันโดยใช้ รู้สึกเร็วกว่า symlinking และ unsymlinkingsites-enabled
sites-available
conf.d
../sites-available/...
ค่อนข้างน่าเบื่อเมื่อทำการทดสอบสิ่งต่าง ๆ ได้อย่างรวดเร็ว แต่ในระยะยาวมันมีประโยชน์และจัดการได้ง่ายขึ้น :)
ฉันลอง sudo apt install nginx-full คุณจะได้รับแพ็คเกจที่จำเป็นทั้งหมด