Структура постоянных ссылок показывает вопросительный знак

#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. У кого-нибудь есть подсказка?