私はFort
と呼ばれる.htaccess
ファイルを親ディレクトリに持つ文書構造を持っています。同じディレクトリに、public
という名前のフォルダがあります。私はそのpublic
ディレクトリにbootstrap.php
スクリプトを持っています。私はMAMPを使用していますが、デフォルトのURLはlocalhost:8888/Fort/
に設定されている.htaccessはルートディレクトリを書き換えません
RewriteEngine On
RewriteBase /Fort
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ bootstrap.php?url=$1 [QSA,L]
:ここ
は私.htaccess
コードです。
マイbootstrap.php
スクリプトは、このコードを持っています
<?php
echo $_GET['url'];
何らかの理由で、私はURLを渡すときはlocalhost:8888/Fort/foo/bar
を言って、私のbootstrap.php
スクリプトはfoo/bar
としてURLを返します。しかし、私がURL localhost:8888/Fort/
を渡すと、403 Forbidden
エラーが発生し、bootstrap.php
スクリプトがロードされません。
私はこのコードを使用するとエラーはありませんが、代わりに通常のapacheディレクトリルートを取得します。私の 'bootstrap.php'スクリプトが物事をエコーアウトできるように、どうすれば修正できますか? –
'RewriteCond%{REQUEST_FILENAME}!-d'行を削除してみてください。あなたが尋ねたエラーを修正したので、私の答えを受け入れてください。 – SuperDuperApps
@ user249325それを修正しました!ありがとう! –