ฉันสงสัยว่าเป็นไปได้หรือไม่ที่จะลบ 'index.php' ที่แสดงในทุก URL
ฉันสงสัยว่าเป็นไปได้หรือไม่ที่จะลบ 'index.php' ที่แสดงในทุก URL
คำตอบ:
คุณสามารถทำได้โดยการเปิดใช้งาน SEF URL และโดยเฉพาะอย่างยิ่งพารามิเตอร์ "ใช้การเขียน URL ใหม่" ในการกำหนดค่าส่วนกลางของ Joomla
โปรดทราบว่านี่จะสร้างข้อผิดพลาดเซิร์ฟเวอร์ภายในหากคุณไม่ได้สร้าง.htaccess
ไฟล์ก่อนเปิดใช้งานตัวเลือก
มีหน้าเอกสารอธิบายขั้นตอนที่จำเป็นในการรับ URL ที่ดีเหล่านั้น ดูที่นี่: http://docs.joomla.org/Enabling_Search_Engine_Friendly_(SEF)_URLs
โดยทั่วไปคุณจะต้องเปลี่ยนชื่อhtaccess.txt
ไฟล์ที่พบในไดเรกทอรีราก Joomla ของคุณ ขั้นตอนเพิ่มเติมจำเป็นขึ้นอยู่กับลูกไก่ของคุณ
คุณสามารถเพิ่มรหัสนี้ไปด้านบนสุดของ index.php ของ Joomla:
if(strcmp($_SERVER['REQUEST_URI'], '/index.php') == 0 && $_SERVER['QUERY_STRING'] == ''){
header("HTTP/1.1 301 Moved Permanently");
header('Location: /');
exit;
}
ระวังถ้าคุณใช้วิธีนี้คุณจะต้องทำสิ่งนี้ซ้ำเมื่อคุณอัพเกรด
นี่เป็นวิธีการทั่วไปหากเว็บไซต์ของคุณขัดข้องโดยใช้. htaccess:
และ / หรือ
มันน่าจะใช้ได้ดี! หมายเหตุ: คุณแสดงความคิดเห็นโดยให้แฮชแท็กสำหรับบรรทัด "#"
หากคุณใช้เว็บเซิร์ฟเวอร์nginxคุณสามารถใช้ตัวอย่างต่อไปนี้สำหรับnginx.conf
ไฟล์กำหนดค่าที่ Joomla ของคุณ! มีการแสดงไซต์จาก (โดยทั่วไปเพียงเพิ่ม if-condition หลังจากบรรทัดที่มีอยู่ซึ่งมีindex index.php
คำสั่งปรากฏ)
#https://stackoverflow.com/a/38165768/remove-index-php-from-joomla-urls-with-nginx
index index.php index.html index.htm;
if ($request_uri ~ "^/(.*)(?<=/)index\.php/?((?<=/).*)?$") { return 301 /$1$2; }
รายละเอียดเพิ่มเติมที่/programming/28997028/remove-index-php-from-joomla-urls-with-nginx/38165768#38165768