CentOS、Apache、PHPをインストールしました。自分のサイトhttp://example.com/myapp/にアクセスすると、 「禁止」と表示されます。デフォルトでは、index.phpファイルをロードしていません。
http://example.com/myapp/index.phpにアクセスすると、正常に機能します。
その問題を修正する方法はありますか?
CentOS、Apache、PHPをインストールしました。自分のサイトhttp://example.com/myapp/にアクセスすると、 「禁止」と表示されます。デフォルトでは、index.phpファイルをロードしていません。
http://example.com/myapp/index.phpにアクセスすると、正常に機能します。
その問題を修正する方法はありますか?
index.php をインデックス ファイルとして認識するように Apache を設定する必要があります。
これを実現する最も簡単な方法..
Web ルートに .htaccess ファイルを作成します。
行を追加...
DirectoryIndex index.php
この問題に関するリソースは次のとおりです...
http://www.twsc.biz/twsc_hosting_htaccess.php
編集: .htaccess ファイルを許可するように apache が構成されていると想定しています。そうでない場合は、Apache の構成ファイル (httpd.conf) の設定を変更する必要があります。
「DirectoryIndex index.php」を .htaccess ファイルに追加するとうまくいくかもしれませんが、
ノート:
一般に、.htaccess ファイルは使用しないでください。
これはhttp://httpd.apache.org/docs/1.3/howto/htaccess.htmlから引用されて
います。これは古いバージョンの apache に言及していますが、原則はまだ適用されると思います。
以下をhttpd.confに追加すると(アクセスできる場合)、より良い形式と見なされ、サーバーのオーバーヘッドが少なくなり、まったく同じ効果が得られます。
<Directory /myapp>
DirectoryIndex index.php
</Directory>
編集: 編集の時点で、v1.3 のドキュメントはダウンしています。v2.4 ドキュメント(編集時の最新バージョン) にも同様のスタンスがあります。
一般に、
.htaccess
ファイルの使用は可能な限り避けるべきです。ファイルに入れることを検討するすべての構成は、メイン サーバー構成ファイル.htaccess
のセクションで同様に効果的に行うことができます。<Directory>
推測では、ディレクトリ インデックスが index.html に設定されているか、またはいくつかのバリアントが設定されていると思います。試してみてください。
DirectoryIndex index.html index.php
これにより、引き続き index.html が index.php よりも優先されます (メンテナンス ページを表示する必要がある場合に便利です)。
これは誰かに役立つかもしれません。これは httpd.conf のスニペットです (Apache バージョン 2.2 Windows)
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
<IfModule dir_module>
DirectoryIndex index.html
DirectoryIndex index.php
</IfModule>
これで index.html ファイルが検索され、見つからない場合は index.php が検索されます。
次の .htaccess ファイルを作成してみてください。
DirectoryIndex index.php
編集:実際には、「php-apache」パッケージまたはそれらの両方でインストールすることになっているものはありませんか?