4

行を追加しました

AddType application/x-httpd-php .html

Apache Configファイルに追加しましたが、.htmlファイル内のphpスクリプトを解析できません。私は何が間違っているのですか?

これは、この情報を追加するための間違った構成ファイルですか?

4

4 に答える 4

2

使用されるハンドラーは少し異なる場合があります。

最後の手段として PHP ファイルを渡すことをお勧めします。これは、力ずくのアプローチの 1 つであるより少ない労力で解決できるためです。

非常に一般的なバリエーションの一部を以下に示しますが、さらに多くのバリエーションがある可能性があります。

    AddType application/x-httpd-php

    AddType application/x-httpd-php5

    AddHandler application/x-httpd-php

    AddHandler application/x-httpd-php5

前述のとおり、AddType と AddHandler の両方の組み合わせが必要になる場合があります。

于 2012-11-05T22:21:03.930 に答える
2

.htaccess を使用できます:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$.html $1.php [L]
RewriteRule ^(.*)$.htm $1.php [L]
于 2012-11-05T21:35:56.423 に答える
1

これはまさにあなたが求めているものではないことはわかっていますが、次のように Apache RewriteEngine を使用して、ユーザーが呼び出す HTML ファイルを偽造することができます。

RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^((.+)\.(html|htm))$ ($2).php [L]

.htmlまた、これを設定したことを忘れたり、HTML をサーバーにアップロードできることを忘れたりした場合に、PHP スクリプトとして実行しないことは、セキュリティ上の優れた点だと思います。.html( PHPファイルとしてファイルシステムでファイルを実行するようにApacheを構成しません。)

于 2012-11-05T21:33:15.720 に答える
1

一部の Web ホストでは、両方のディレクティブが必要です。これを試して:

AddType application/x-httpd-php .htm .html
AddHandler x-httpd-php  .htm .html

サイト全体でこれが必要ない場合は、ファイル/ディレクトリごとに .htaccess を使用してこれを行うことを強くお勧めします。

于 2012-11-05T21:34:17.507 に答える