ฉันกำลังเขียนเฟรมเวิร์ก MVC-ish ที่ใช้ PHP อย่างง่าย ฉันต้องการให้กรอบนี้สามารถติดตั้งในไดเร็กทอรีใดก็ได้
สคริปต์ PHP ของฉันคว้าคำขอ uri และแบ่งออกเป็นส่วนต่างๆ ทำให้ส่วนที่ 1 เป็นตัวควบคุมและส่วนที่ 2 ดำเนินการ สิ่งนี้ใช้ได้ดีเมื่อฉันทำสิ่งนี้:
http://www.example.com/mvc/module/test/
มันจะไปที่ตัวควบคุมโมดูลเฉพาะและวิธีการ ตอนนี้ฉันมีตัวควบคุมเริ่มต้นคือตัวควบคุมบ้านซึ่งอยู่ในโฟลเดอร์โฮม
ตอนนี้เมื่อฉันเข้าถึงโฟลเดอร์นี้โดยตรง http://www.example.com/mvc/home/ มันจะแสดง 403 ต้องห้ามเนื่องจากมีโฟลเดอร์นี้อยู่ แต่ควรกลับไปที่ http://www.example.com ด้วย /mvc/index.php
ถ้าฉันจะติดตั้งเฟรมเวิร์กในโฟลเดอร์อื่นสมมติว่าโฟลเดอร์เฟรมเวิร์กต้องเปลี่ยนเส้นทางกลับไปที่http://www.example.com/framework/index.php
ฉันต้องการเปลี่ยนเส้นทางทุกโฟลเดอร์และไฟล์ php กลับไปที่ index.php โดยปล่อยให้ทุกอย่างเป็นไปตามนั้น
ปัญหาแรกของฉันที่ฉันพบคือมันไม่เคยเปลี่ยนเส้นทางไปยังโฟลเดอร์ที่ถูกต้องไปยังโฟลเดอร์รากของโดเมนเสมอ
นี่คือสิ่งที่ฉันลอง:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php [L]
index.php
หรือคุณต้องการเปลี่ยนเส้นทางทุกคำขอที่ส่งไปยังโฟลเดอร์นั้น ๆindex.php
?