Истифодаи htaccess дар муҳаррики PHP
Барои он ки муҳаррики сайтиро созем, аввал бояд тавре созем, ки дархости ҳар як URL-и сайт бо як файли PHP кор карда шавад.
Ин бо ёрии файли махсуси
.htaccess анҷом дода мешавад.
Биёед ин файлро созем ва онро фаъол кунем,
дар аввали матнаш ин сатрҳоро навиштан:
RewriteEngine On
RewriteBase /
Пас аз ин мо метавонем муайян кунем, ки кадом файл
бояд URL-и дархостшударо кор кунад. Ин
бо ёрии фармони RewriteRule анҷом дода мешавад.
Биёед ба кор кардани ин фармон дар амал назарем.
Масалан, биёед тавре созем, ки нишони /test
бо файли index.php кор карда шавад:
RewriteRule /test index.php
Параметри якуми фармони RewriteRule
дар аслан ибораи оддӣ мегирад.
Биёед бо ёрии он тавре созем, ки
ҳамаи URL-ҳо бо файли index.php кор карда шаванд:
RewriteRule .+ index.php
Аммо, баъзе аз нишониҳо бояд ҳамон гуна боқӣ бимонанд. Ин нишониҳоеанд, ки ба файлҳои захираҳо мебаранд: ба CSS, JavaScript, аксҳо ва ғайра.
Биёед аз равона кардани онҳо бо ёрии фармони
RewriteCond сарфи назар кунем:
RewriteCond %{REQUEST_URI} !\.(js|css|ico|jpg|png)$
RewriteRule .+ index.php
Дар саҳифаи index.php мо метавонем
URL-и дархостшударо бо ёрии массиви суперглобалии
$_SERVER гирем:
<?php
$url = $_SERVER['REQUEST_URI'];
?>
Файли .htaccess-ро созед. Бо ёрии он
равона кардани ҳамаи дархостҳо
ба index.php-ро амалӣ кунед.
URL-и дархостшударо дар index.php чоп кунед.