is it possible to include php in html on IIS7?

2019-02-22 11:27发布

问题:

It seems to be possible to do so in Apache,

include php script inside HTML

But can I make my IIS 7 parse html files for php? Currently my html files allow asp includes like it would be splendid if I could just do that with a php file.

My server runs .php files as you would expect.

What I've tried is adding a Handler Mapping in IIS with the same values as the *.php mapping that was created with my IIS/PHP install, only switched for *.html

This didn't work, then I added a handler in my web.config file

<add name="PHP_via_FastCGI" path="*.html" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\PHP\v5.3\php-cgi.exe" resourceType="Either" requireAccess="Script" />

like that, and that didn't change anything.

There are no errors when I run an html file with php code in it, the code just simply does not run.

Let's assume that I cannot just simply change my index.html to an index.php.

回答1:

I had to get this working for a site migrated from apache to IIS that used a mixture of .php and .html for it's scripts. I have this (cropped useless stuff) in my web.config:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers>
            <add name="PHP53_via_FastCGI_HTML" path="*.html" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\PHP\v5.3\php-cgi.exe" resourceType="File" requireAccess="Script" />
        </handlers>
    </system.webServer>
</configuration>

Have you got it in the right section? I hate that most web.config examples I see don't actually tell you want section they should be in </rant>