Я сделал сайт с фронт-контроллером в PHP, но у меня есть некоторые проблемы с URL и постоянными ссылками.Когда я вызываю страницу, чтобы отобразить список зданий (я использую слово byggnader
, которое в переводе с шведского означает buildings
), я не получаю чистую постоянную ссылку, подобную этой:
/byggnader/
Несмотря на настройкив файле .htaccess я получаю постоянную ссылку, подобную этой:
/byggnader/?p=byggnader
Когда я выбираю здание, создается новая страница, а затем я получаю правильную постоянную ссылку, подобную этой:
/byggnader/name
Но почему это не работает с этим на первом шаге:
/byggnader/
Я не хочу, чтобы это было видно:
?p=byggnader
Это не должно быть видно!Просто:
/byggnader/
Это часть моего файла .htaccess:
# List of all buildings
RewriteRule ^byggnader$ /?p=byggnader [L,QSA]
# The selected building to open a new page
RewriteRule ^byggnader/(.+)$ /?p=byggnad&id=$1 [L,QSA]
И это часть моего фронт-контроллера:
$page = isset($_GET["p"]) ? $_GET["p"] : "start";
switch($page) {
case 'byggnader': require_once('buildings.php'); break; // All buildings
case 'byggnad': require_once('building.php'); break; // One building
}
Все работаетхорошо, когда я разработал сайт на localhost, но когда я загрузил код на хост, у меня возникла эта проблема.Помощь нужна!