Penggunaan htaccess dalam Enjin PHP

Untuk membuat enjin laman web, pada awalnya kita perlu memastikan bahawa sebarang permintaan URL laman web diproses oleh satu fail PHP.

Ini dilakukan dengan menggunakan fail khas .htaccess. Mari kita buat fail ini dan hidupkannya dengan menulis di awal teksnya baris-baris berikut:

.htaccessRewriteEngine On
RewriteBase /

Selepas ini, kita boleh menentukan fail mana yang harus memproses URL yang diminta. Ini dilakukan dengan perintah RewriteRule.

Mari kita lihat cara perintah ini berfungsi secara praktikal. Sebagai contoh, mari kita buat supaya alamat /test diproses oleh fail index.php:

.htaccessRewriteRule /test index.php

Parameter pertama bagi perintah RewriteRule sebenarnya menerima ungkapan nalar. Mari kita gunakannya untuk membuat supaya semua URL diproses oleh fail index.php:

.htaccessRewriteRule .+ index.php

Walau bagaimanapun, sebahagian alamat seharusnya tidak diubah hala. Ini adalah alamat yang menuju kepada fail sumber: CSS, JavaScript, gambar dan sebagainya.

Mari batalkan pengubahan hala mereka dengan menggunakan perintah RewriteCond:

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

Pada halaman index.php, kita boleh mendapatkan URL yang diminta menggunakan tatasusunan superglobal $_SERVER:

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

Buat fail .htaccess. Dengan menggunakannya, laksanakan pengubahan hala semua permintaan kepada index.php.

Задание 2

Paparkan pada index.php URL yang diminta.