個人開発なので、PHPはフレームワークを使ってません。
最近はほとんどのサイトでPHPの拡張子がURLから見えないので、多分フレームワークのルーティングで隠蔽してるからと思います。
.phpが見えてしまうのはよろしくない気がして、WordPressのURL表示を真似して試してみたところ出来ました。
< コード >
Apacheのhttpd.conf
# # DirectoryIndex: sets the file that Apache will serve if a directory # is requested. # <IfModule dir_module> DirectoryIndex index.html index.php </IfModule>
index.phpでインクルード
<?php
/**
* ルーティング
* .php を隠す為、メニューリンクからのリクエストはここを通る
*
* First create : 2024-02-09
* Last update :
*
*/
ini_set('display_errors', 0);
date_default_timezone_set('Asia/Tokyo');
// == リクエストパラメータ取得 == //
$pg = $_POST["pg"] ? $_POST["pg"] : $_GET["pg"];
if (!$pg) {
include "./photo.php";
}
else {
include "./".$pg.".php";
}
Bootstrap ナビゲーションバー
<li class="nav-item" id="nav_photo">
<a id="navlink_photo" class="nav-link tippyspan" href="./?pg=photo" target="_blank" title="写真集">写真集</a>
</li>
<li class="nav-item" id="nav_mailconfig">
<a id="navlink_mailconfig" class="nav-link tippyspan" href="./?pg=mailconfig" target="_blank" title="メール配信設定">メール配信</a>
</li>