ลบ index.php ของ Codeigniter 3 ใน docker


วิธีการลบ index.php?

  1. สร้างไฟล์ .htaccess

ต้องเริ่มจากการสร้างไฟล์ .htaccess ในไดเรกทอรีหลักของโปรเจคหรือไดเรกทอรีของ CodeIgniter ของเรา การสร้างไฟล์ .htaccess จะช่วยให้เราแก้ไขกฎการเขียนใหม่ได้โดยไม่ต้องเข้าถึงไฟล์กำหนดค่าเซิร์ฟเวอร์ โดยเนื่องจากเหตุนี้ .htaccess เป็นสิ่งสำคัญต่อความปลอดภัยของแอปพลิเคชันเว็บของเรา และต้องให้แน่ใจว่าไฟล์นี้ถูกซ่อน เพราะ htaccess เป็นตัวย่อที่ใช้สำหรับ Hypertext Access มันเป็นไฟล์กำหนดค่าที่ควบคุมไดเรกทอรี “.htaccess”

หลังจากสร้างไฟล์ .htaccess เสร็จแล้ว ให้เพิ่มโค้ดต่อไปนี้ในไฟล์นี้

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
  1. การลบไฟล์ index.php

เปิดไฟล์ config.php ในโปรแกรมแก้ไขข้อความของคุณและลบ index.php จากตรงนี้

เปลี่ยน:

$config['index_page'] = "index.php";

เป็น:

$config['index_page'] = "";

แต่ในบางกรณีบางครั้ง อาจเกิดกรณีที่การตั้งค่าเริ่มต้นสำหรับ url_protocol ไม่ทำงานอย่างเหมาะสม สำหรับการแก้ปัญหานี้ เราต้องเปิดไฟล์ config.php และ

เปลี่ยน:

$config['uri_protocol'] = "AUTO";

เป็น:

$config['uri_protocol'] = "REQUEST_URI";

มักจะตั้งค่าเป็น REQUEST_URI อยู่แล้ว ในกรณีนั้น เราไม่ต้องเปลี่ยนมัน

  1. เปิดใช้งาน apache mode rewrite

ตอนนี้เราจะต้องเปิดใช้งาน mod_rewrite ด้วยคำสั่งต่อไปนี้

$ sudo a2enmod rewrite
  1. รีสตาร์ท Apache

ตอนนี้เราต้องรีสตาร์ท Apache โดยเขียนคำสั่งต่อไปนี้

$ sudo service apache2 restart

แก้พื้นที่เต็ม /dev/vda1 Docker

แก้พื้นที่เต็ม /dev/vda1 แก้ /dev/vda1 Disk เต็มของ Docker (คำสั่งเช็ค df -h) ปัญหา Build Docker แล้วพื้นที่ /dev/vda1 เพิ่มขึ้นจาก Images เก่าไม่ถูกเคลียร์ออก พิมพ์คำสั่งข้างล่าง ตามคำอธิบาย Make sure all docker containers are down: docker compose down Remove problematic overlay2: sudo rm -R /var/lib/docker/overlay2 Remove images: sudo rm -R /var/lib/docker/image Clear any other cached data: docker system prune -f Restart docker service: … Read more