วิธีกำหนดค่า Nginx สำหรับหน้า PHP

ในบทความนี้ เราได้แสดงวิธีกำหนดค่าหน้า Nginx สำหรับ PHP บน CentOS

สำหรับบทช่วยสอนนี้ เราได้ติดตั้ง NGINX บทช่วยสอนนี้จะครอบคลุมการกำหนดค่าพื้นฐานของเว็บเซิร์ฟเวอร์ NGINX เพื่อประมวลผลแอปพลิเคชัน PHP และเซิร์ฟเวอร์บนพอร์ต 80 ขอแนะนำให้คุณศึกษา NGINX และ PHP-FPM

ข้อกำหนดเบื้องต้น

  • เซิร์ฟเวอร์เฉพาะหรือคลาวด์ที่ติดตั้ง CentOS
  • ติดตั้ง NGINX บน CentOS
  • ติดตั้ง PHP แล้ว
  • SSH ในฐานะผู้ใช้รูท (คุณสามารถใช้ผู้ใช้ปกติที่มีสิทธิ์ sudoer ใช้ 'sudo' กับทุกคำสั่ง)

นี่คือบทความสำหรับการที่มีการติดตั้ง Nginxและการติดตั้งของ PHP

เมื่อคุณติดตั้งทั้งคู่แล้ว ให้เปิดไฟล์กำหนดค่า PHP-fpm หลัก:

# vi /etc/php.ini

เรากำลังมองหาพารามิเตอร์ที่ชุดcgi.fix_pathinfo เราจะไม่ใส่ความคิดเห็นโดยการลบ semi-colon(;) และตั้งค่าเป็น 0

นี่เป็นการตั้งค่าที่ไม่ปลอดภัยอย่างยิ่ง เนื่องจากมันบอกให้ PHP พยายามรันไฟล์ที่ใกล้เคียงที่สุดที่สามารถค้นหาได้หากไฟล์ PHP ไม่ตรงกันทุกประการ โดยพื้นฐานแล้วจะอนุญาตให้ผู้ใช้สร้างคำขอ PHP ในลักษณะที่จะอนุญาตให้ดำเนินการสคริปต์ที่พวกเขาไม่ควรได้รับอนุญาตให้ดำเนินการ

ดังนั้น เราจะเปลี่ยนเงื่อนไขทั้งสองนี้โดยยกเลิกการใส่เครื่องหมายบรรทัดและตั้งค่าเป็น "0" ดังนี้:

cgi.fix_pathinfo=0

เมื่อเสร็จแล้วให้บันทึกและออก

ถัดไป เริ่มบริการ php-fpm ใหม่:

# systemctl restart php-fpm

กำหนดค่าบล็อกเซิร์ฟเวอร์ Nginx เพื่อใช้ PHP Processor

# vi /etc/nginx/sites-available/default

หมายเหตุ: ชื่อไฟล์บล็อกเซิร์ฟเวอร์อาจแตกต่างกันดังที่แสดงด้านบน

บล็อกเซิร์ฟเวอร์เริ่มต้นของ Ngnix อาจมีลักษณะดังนี้:

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;

root /usr/share/nginx/html;
index index.html index.htm;

server_name localhost;

location / {
try_files $uri $uri/ =404;
}
}

  • ที่นี่เราจำเป็นต้องเพิ่มคำสั่งดัชนี index.php เพื่อให้ไฟล์ PHP สามารถให้บริการเมื่อมีการร้องขอไดเร็กทอรี
  • แก้ไขคำสั่ง server_name แทนที่ localhost ด้วยชื่อโดเมน FQDN หรือที่อยู่ IP สาธารณะของคุณ
  • เพิ่มคำสั่ง try_files เพื่อให้แน่ใจว่า Nginx จะไม่ส่งคำขอที่ไม่ถูกต้องไปยังโปรเซสเซอร์ PHP ของเรา

บล็อกเซิร์ฟเวอร์มีลักษณะดังนี้:

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;

root /usr/share/nginx/html;
index index.php index.html index.htm;

server_name server_domain_name_or_IP;

location / {
try_files $uri $uri/ =404;
}

error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}

location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

กำหนดค่าเหมือนการเปลี่ยนแปลงข้างต้น ตอนนี้บันทึกและออกจากไฟล์

รีสตาร์ท Ngnix เพื่อทำการเปลี่ยนแปลงที่จำเป็น:

# systemctl restart nginx

ตอนนี้สร้างไฟล์ทดสอบ PHP:

# vi /usr/share/nginx/html/info.php

เพิ่มโค้ด PHP ที่ถูกต้องซึ่งส่งคืนข้อมูลที่จัดรูปแบบแล้วเกี่ยวกับเซิร์ฟเวอร์ของเรา:

<>
phpinfo();
?>

บันทึกและออก.

นั่นคือเราได้ทำการกำหนดค่าที่จำเป็นรวมถึงการปรับเปลี่ยน

สุดท้าย มาที่ไฟล์ info.php ที่เราได้สร้างไว้ก่อนหน้านี้:

https://server_domain_name_or_IP/info.php

คุณควรเห็นหน้าเว็บที่สร้างโดย PHP พร้อมข้อมูลเกี่ยวกับเซิร์ฟเวอร์ของคุณ

หากคุณเห็นหน้าข้อมูล PHP ที่สร้างโดย PHP แสดงว่าคุณได้ตั้งค่าการประมวลผล PHP ด้วย Nginx สำเร็จแล้ว

ในตอนนี้ ให้ลบไฟล์โดยพิมพ์:

sudo rm /usr/share/nginx/html/info.php

ในบทความนี้ เราได้เห็นแล้วว่าวิศวกรฝ่ายสนับสนุนของเรากำหนดค่า Nginx สำหรับหน้า PHP อย่างไร


วิธีปิดการใช้งาน Block Editor และติดตั้ง Classic Editor ใน WordPress 5.0

วิธีปิดการใช้งาน Block Editor และติดตั้ง Classic Editor ใน WordPress 5.0

เริ่มต้นด้วย WordPress 5.0 ตัวแก้ไขเริ่มต้นบน WordPress คือตัวแก้ไขบล็อกใหม่ ตัวแก้ไขใหม่แตกต่างไปจากเดิมอย่างสิ้นเชิง

การแก้ไข: “ตัวแก้ไขพบข้อผิดพลาดที่ไม่คาดคิด” ใน WordPress หลังจากอัปเดต

การแก้ไข: “ตัวแก้ไขพบข้อผิดพลาดที่ไม่คาดคิด” ใน WordPress หลังจากอัปเดต

ไม่สามารถเขียนบทความใหม่โดยใช้ตัวแก้ไขบล็อกใหม่ใน WordPress ได้? โอกาสที่คุณจะได้รับ “The editor

🔧 การแก้ไข: การติดตั้ง PHP ของคุณดูเหมือนจะไม่มีส่วนขยาย MySQL ที่ WordPress . ต้องการ

🔧 การแก้ไข: การติดตั้ง PHP ของคุณดูเหมือนจะไม่มีส่วนขยาย MySQL ที่ WordPress . ต้องการ

ต้องการเรียกใช้ไซต์ WordPress ที่จัดการด้วยตนเองหรือไม่? ยอดเยี่ยม. คุณจะได้เรียนรู้หลายล้านสิ่ง หนึ่งในส่วนสำคัญของการตั้งค่า

วิธีรีเฟรชรายการโฟลเดอร์ใน Windows 11

วิธีรีเฟรชรายการโฟลเดอร์ใน Windows 11

เมื่อไม่มีตัวเลือกรีเฟรชในเมนูบริบท ต่อไปนี้คือวิธีรีเฟรชรายการใน File Explorer ใน Windows 11

วิธีแก้ไขปัญหา WordPress 5.0

วิธีแก้ไขปัญหา WordPress 5.0

ในที่สุด WordPress 5.0 ก็เปิดตัวและมาพร้อมกับประสบการณ์การแก้ไขใหม่ล่าสุดกับ Gutenberg

วิธีตั้งค่า Classic Editor เป็น Default Editor ใน WordPress แทน Gutenberg

วิธีตั้งค่า Classic Editor เป็น Default Editor ใน WordPress แทน Gutenberg

Gutenberg Editor จะกลายเป็นตัวแก้ไขเริ่มต้นใน WordPress ในไม่ช้า คุณจะมีตัวเลือกให้เลือก Classic Editor

วิธีแก้ไขข้อผิดพลาดการจัดเรียง “utf8mb4_0900_ai_ci” เมื่อนำเข้าฐานข้อมูล WordPress

วิธีแก้ไขข้อผิดพลาดการจัดเรียง “utf8mb4_0900_ai_ci” เมื่อนำเข้าฐานข้อมูล WordPress

หากคุณกำลังเปลี่ยนการติดตั้ง WordPress จากเซิร์ฟเวอร์ MySQL 8 ไปเป็น MySQL 5.7 (หรือต่ำกว่า) คุณมักจะประสบปัญหา

วิธีเปิดใช้งานแท็กสั้น PHP

วิธีเปิดใช้งานแท็กสั้น PHP

ในบทความนี้ เราได้กล่าวถึงวิธีเปิดใช้งานแท็กสั้น PHP แล้ว PHP แยกวิเคราะห์ไฟล์โดยใช้แท็กเปิดและปิด ซึ่งดูเหมือนไฟล์ . วิธีเปิดใช้งานแท็กสั้น PHP

กำหนดค่า mod_evasive เพื่อป้องกันการโจมตี DoS และ DDoS บน CentOS

กำหนดค่า mod_evasive เพื่อป้องกันการโจมตี DoS และ DDoS บน CentOS

ในบทความนี้ เราจะเรียนรู้วิธีติดตั้งและกำหนดค่า mod_evasive เพื่อป้องกันการโจมตี DoS และ DDoS บน CentOS โมดูล mod_evasive Apache

วิธีการติดตั้ง PHP ด้วย PHP-FPM สำหรับ NGINX บน CentOS

วิธีการติดตั้ง PHP ด้วย PHP-FPM สำหรับ NGINX บน CentOS

วิธีการติดตั้ง PHP ด้วย PHP-FPM สำหรับ NGINX บน CentOS การกำหนดค่าพื้นฐานของเว็บเซิร์ฟเวอร์ NGINX เพื่อประมวลผลแอปพลิเคชัน PHP และเซิร์ฟเวอร์บนพอร์ต 80