Чистый / красивый URL-адрес с меню PHP

Я использую меню PHP для своего веб-сайта. Есть только макс. одна подстраница на каждый пункт меню, например mypage.com/services и никогда больше подстраниц, например mypage.com/services/blub.

index.php:

<?php require_once("navigation.php"); ?>
...
<?php include('sites/'.$_GET['p'] . '.php'); ?>

navigation.php

<ul class = "nav navbar-nav">
    <li>
        <a href = "?p=home">Home</a>
    </li>
    <li>
        <a href = "?p=services">Services</a>
    </li>
    ...
</ul>

Теперь я хочу реализовать красивые / чистые URL-адреса. В настоящее время мои URL-адреса выглядят так:

https://www.example.com/?p=services

и я хочу это:

https://www.example.com/services

Я написал следующее в своем htaccess, но моя страница выглядела пустой:

RewriteEngine On
RewriteCond %{QUERY_STRING} (.*)
RewriteRule ^(.*) index.php?url=$1&query=%1 [B,L]

Лучший способ добиться этого, создав папки и поместив код на страницы index.php и поместив файл .htacces в каталог по умолчанию index.php ИЛИ еще один способ, который я опубликовал в ответах.

Rohit.007 18.05.2018 21:00
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
55
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Поместите это ваш файл .htaccess

#turn on url rewriting 
RewriteEngine on

#remove the need for .php extention 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php

Это позволяет вам получать доступ к файлам .php без расширения, поэтому ваши ссылки должны читать

href = "/somepage"

и это направит на

href = "/somepage.php" 

Другие вопросы по теме