Please upgrade here. These earlier versions are no longer being updated and have security issues.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

IIS Install on Localhost Development Machine

What's the best way to install Vanilla Forum on IIS on a localhost development machine using IIS 10 and Windows 10? Should you just be able extract the zip, run it and install the forum like with Apache?

I'm seeing a HTTP 404 on http://localhost.vf:80/dashboard/setup when I browse to localhost.vf where the forum is hosted.

My set-up in a little more detail:

  • I've set-up a basic website, hosted on localhost.vf (added to the hosts file), installed and tested PHP;
  • I have MySQL 5.7 installed with a blank database ready to go.
  • I have a web.config set-up so IIS will access the website.

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <httpErrors errorMode="Detailed" />
    
            <handlers>
                <add name="FastCGI" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\inetpub\php\php-cgi.exe" resourceType="File" />
            </handlers>
            <defaultDocument>
                <files>
                    <add value="index.php" />
                </files>
            </defaultDocument>
        </system.webServer>
    </configuration>
    
  • I have tried adding rewrites in to the webconfig, based on the following, but it doesn't seem to help:

    <rewrite>
         <rules>
         <rule name="Vanilla Rule 1" stopProcessing="true">
         <match url="^(.*)$" ignoreCase="false" />
         <conditions logicalGrouping="MatchAll">
         <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
         <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
         </conditions>
         <action type="Rewrite" url="index.php\?p={R:1}" appendQueryString="true" />
         </rule>
         </rules>
     </rewrite>
    
  • Permissions are enabled for EVERYBODY, IUSER, IIS_USERS - Full Control - bulldozer approach.

  • Download and unzip the latest Vanilla Forum in to the web directory, add the web.config file (1st version).
  • There's no config.php yet as I want to create one using the install. So there's no debugging yet.
  • IIS has the redirect\rewrite module installed.
  • As hinted at above I can get this to work on Apache on the same machine (different PHP, Webserver implementation; same hosts file, MySQL, Vanilla Forum );

Helpful guidance would be much appreciated. Thanks.

Comments

  • Truthfully I'm not exactly sure how or why but I have this working now. Things I tried:

    • Installing PHP Manager (and fiddling with the registry to get it to install) to check the installation. This gives advice on the IIS PHP configuration if it finds something it doesn't like.
    • Switching the website to the main wwwroot folder and applying the doc_root to wwwroot.
    • Reinstalling PHP with the latest PHP 7.1.9 NTS X64.
    • Moving PHP to the C:\PHP folder. Previously it was in the inetpub folder to differentiate it from the TS version of PHP also on the system.
    • Adding and removing the rewrite module.
    • Enabling ALL the windows extensions.

    Something seems to have clicked.

  • Thanks for following up your initial question.

    Glad it is working for you.

    I'm assuming that you have IIS on your intended production server.

    IIS isn't officially supported by Vanilla.

Sign In or Register to comment.