Sử dụng htaccess trong engine PHP

Để tạo engine cho website, trước hết cần phải làm sao để yêu cầu đến bất kỳ URL nào của site đều được xử lý bởi một file PHP duy nhất.

Việc này được thực hiện nhờ một file đặc biệt .htaccess. Hãy tạo file này và kích hoạt nó, bằng cách viết những dòng sau ở đầu nội dung của nó:

.htaccessRewriteEngine On
RewriteBase /

Sau đó, chúng ta có thể chỉ định file nào sẽ xử lý URL được yêu cầu. Điều này được thực hiện bằng lệnh RewriteRule.

Hãy xem xét hoạt động của lệnh này trong thực tế. Ví dụ, hãy làm sao để địa chỉ /test được xử lý bởi file index.php:

.htaccessRewriteRule /test index.php

Tham số đầu tiên của lệnh RewriteRule thực chất nhận một biểu thức chính quy. Hãy sử dụng nó để làm sao cho tất cả các URL đều được xử lý bởi file index.php:

.htaccessRewriteRule .+ index.php

Tuy nhiên, một số địa chỉ vẫn không nên được chuyển hướng. Đó là các địa chỉ dẫn đến file tài nguyên: như CSS, JavaScript, hình ảnh và vân vân.

Hãy hủy chuyển hướng của chúng bằng lệnh RewriteCond:

.htaccessRewriteCond %{REQUEST_URI} !\.(js|css|ico|jpg|png)$
RewriteRule .+ index.php

Trên trang index.php, chúng ta có thể nhận được URL được yêu cầu thông qua mảng siêu toàn cục $_SERVER:

index.php<?php
  $url = $_SERVER['REQUEST_URI'];
?>
Задание 1

Tạo file .htaccess. Sử dụng nó để thực hiện chuyển hướng tất cả các yêu cầu đến index.php.

Задание 2

Hiển thị trên index.php URL được yêu cầu.