Chặn yêu cầu HTTP bằng phần tử 'REQUEST_URI' của $ _SERVER. Điều này trả về (tôi tin) chỉ trang được yêu cầu, không phải toàn bộ URI/URL - thông tin thêm here. Khi bạn đã nắm lấy yêu cầu trang, hãy thay thế địa chỉ của tệp thực sự cần thiết. Ví dụ, người dùng thân thiện www.somewebsite.com/page01 trở thành một yêu cầu cho còn phải nhàm chán-sounding www.somewebsite.com?page01.php. Phương pháp này sẽ không tạo ra một thư mục ảo, như vậy, nhưng nên làm việc được. Tôi đã sử dụng một phương pháp tương tự trên IT website của riêng mình, trong đó mỗi trang được tải qua index.php, cho phép tệp đó giữ nhật ký khách truy cập trong thời gian thực (trang web có Webalizer, chạy trong một ngày hoặc lâu hơn).
Viết lại tên tệp có thể hoạt động, mặc dù không phải là sở thích cá nhân của tôi. Việc sử dụng PHP để thực hiện một URI/URL-swap có thể sẽ mang lại lợi ích của việc giảm nhu cầu máy chủ, do yêu cầu thời gian đọc/ghi đĩa ít hơn so với ghi đè tên tập tin.
Tôi hy vọng điều đó sẽ hữu ích.
Hãy xem ví dụ: [Silex] (http://silex.sensiolabs.org/) hoặc [Thành phần định tuyến Symfony] (http://symfony.com/doc/current/components/routing/introduction.html). Tốt hơn để sử dụng các thành phần được chứng minh tốt hơn so với việc cuộn các công cụ của riêng bạn. – nietonfir