ディレクトリの htaccess ファイルに必要なディレクティブを把握しようとしています。少し背景を説明するために、私は AddType と AddHandler をいじって、html ファイルを取得してそれらで php を実行しようとしました。次のようなディレクティブを追加していました。
AddType application/x-httpd-php .php .html
と
AddType application/x-httpd-php5 .php .html
それはうまくいかなかったので、ハンドラーも追加しようとしました:
AddHandler x-httpd-php .php .html
と
AddHandler application/x-httpd-php .php .html
それでも私が望んでいたものは得られなかったので、次のような多くの組み合わせを試しました。
AddType application/x-httpd-php .php .html
AddHandler php-script .php .html
SetHandler との組み合わせも試しました
AddType application/x-httpd-php .php .html
AddHandler php-script .php .html
SetHandler application/x-httpd-php .php html
Web で見つけた AddType と AddHandler の考えられるすべての組み合わせを試しました。
!=====ここが重要======! HTMLでphpを実行できるようにするためだけに、phpでhtmlファイルを実行するのは良い習慣ではないことに気付きました。私はもうそれをやろうとはしていません。この部分を上に投稿する唯一の理由は、私が変更したいくつかのことについてのアイデアを提供することです. これらの変更は、ルートの上のディレクトリにある htaccess ファイルに加えられました。!==============================!
php を html ファイルで実行する必要がなくなったので、htaccess ファイルから AddType、AddHandler、および SetHandler ディレクティブをクリアしました。しかし、php ファイルを実行しようとすると、内部サーバー エラーが発生します。
ということで、いろいろ入れてみました。ハンドルがあれば、ブラウザは php を実行する代わりにダウンロードします。
変更したディレクトリの下で実行されている php はすべて正常に動作することに注意してください。しかし、そのディレクトリまたはそのディレクトリのサブディレクトリ内のすべてのものには、php ファイルに関する同じ問題があります。
そのディレクトリの htaccess ファイルを削除しようとしましたが、うまくいきません。内部エラーが発生します。
Override をオフにすると、内部エラーが発生します。
私が変更したものがそのディレクトリに永続化されています。
a. オフにする b. そのhtaccessファイルに正しいハンドラーを追加して、phpファイルが再び実行されるようにします(サーバーの残りの部分にあるように)