初めてのMAMP【URLのPublicを省略】


URLからpublicを省略する手順

この記事は前回の続きですが、URLからpublicを省略したいだけの方は、そのまま読み進めていただいても問題ありません。
前回記事:初めてのMAMP【アプリ作成からサーバー起動まで】

工程は 2つ しかありませんので、1分もあれば読破可能です。

まずは現状を確認しておきます。

【現状】mampでsampleappを開くと、、、

URLがこのような場合。

下図のように、ファイル(フォルダ)のリストが表示されてしまいます。

URLの末尾にpublicをつけたら。

トップページが表示されます。

毎回URLにpublicをつけるのは面倒なので、入力を省略したい。というのが今回の目的です。

それでは作業に入りましょう。

.htaccessの編集とファイルの移動 (VScode使用)

.htaccessの編集

MAMP > htdocs > アプリ名 > public > .htaccess を開く。(今回のアプリ名は「sampleapp」)

ファイルの中身を全て削除し、以下のように書き換えてください。(コピペでOK)

.htaccess
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} -d [OR]
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^ ^$1 [N]


    RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
    RewriteRule ^(.*)$ public/$1 


    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ server.php


</IfModule>
.htaccessファイルの移動

ファイルの場所を「publicの中」から「アプリ名直下」に移します。

before
MAMP > htdocs > アプリ名 > public > ここから⬅︎
after
MAMP > htdocs > アプリ名 > ここに移す⬅︎

以上で作業完了です。

確認作業

URLを打ち込んで確かめてみましょう。

ファイル(フォルダ)のリストではなく、トップページが表示されましたね。

URLからpublicの入力を省略することができました。