#php #apache #.htaccess #permalinks
#php #apache #.htaccess #постоянные ссылки
Вопрос:
Я создал сайт с фронт-контроллером на 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=byggnadamp;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, но когда я загрузил код на хост, у меня возникла эта проблема. Помощь необходима!
Комментарии:
1. Какую ссылку вы используете в своем HTML?
2. @AbraCadaver Я использую это:<a href=»/byggnader»>Byggnader</a>
3. У кого-нибудь есть подсказка?