web-dev-qa-db-fra.com

Transférez .html / .htm vers .php avec .config

Je déplace un site de mon serveur hébergé Linux vers le serveur hébergé Windows d'un client.

Le fichier .htaccess ne fonctionne plus et on me dit que les serveurs Windows utilisent .config.

Comment puis-je transférer tous les utilisateurs accédant aux fichiers .html et .htm vers le fichier .php équivalent?.

Informations sur le serveur ...

Système d'exploitation/Type d'hébergement: Windows/Hébergement partagé

Version d'exécution .Net: ASP.Net 2.0/3.0/3.5

Version PHP: PHP 5.2

Version IIS: IIS 7.0

Centre de données: États-Unis

MODIFIER

* Hébergement fourni par GoDaddy

Un ami m'a dit que cela devrait marcher mais cela n'a aucun effet sur le site.

<configuration>
<system.webServer>
    <handlers>
        <add name="PHP-FastCGI" verb="*" 
            path="*.html" 
            modules="FastCgiModule"
            scriptProcessor="c:\php\php-cgi.exe" 
            resourceType="Either" />
    </handlers>
</system.webServer>
</configuration>
1
Philip Kirkbride

Tout ce que vous avez fait dans ce code est d'activer PHP sur le serveur. Vous devez réécrire ou rediriger vos pages .html vers les pages .php correspondantes à l'aide du IIS URL Rewriter.

Quelque chose comme cela pourrait fonctionner pour vous. Mettez-le dans system.webServer.

<rewrite>
    <rules>
        <rule name="REWRITE_TO_PHP">
        <match url="^(.+).html$" />
        <conditions logicalGrouping="MatchAll" />
        <action type="Rewrite" url="{R:2}.php" />
    </rule>
</rewrite>

C'est assez simpliste et je ne suis pas au travail pour le tester, mais cela devrait vous aider à démarrer. Vous devrez ajuster le RegEx en conséquence.

2
StephenCollins