migrating wordpress to new Windows 2016 - getting HTTP Error 500.0

0

New Windows 2016 install. Copied Wordpress site and database and set up like previous install on Windows 2012.

HTTP Error 500.0 - Internal Server Error Most likely causes:

IIS received the request; however, an internal error occurred during the processing of the request. The root cause of this error depends on which module handles the request and what was happening in the worker process when this error occurred.

IIS was not able to access the web.config file for the Web site or application. This can occur if the NTFS permissions are set incorrectly.

IIS was not able to process configuration for the Web site or application.

The authenticated user does not have permission to use this DLL.

The request is mapped to a managed handler but the .NET Extensibility Feature is not installed.

Detailed Error Information: Module CgiModule Notification ExecuteRequestHandler Handler FastCGI Error Code 0x00000000 Requested URL https://xxxxx.com:443/index.php (Do you need the domain name?) Physical Path C:\inetpub\wwwroot\SKYR\index.php Logon Method Anonymous Logon User Anonymous

Authenticated users and iis_iusrs on folder.

Would the PHPINFO readout be helpful? If so which parts? C:\Program Files (x86)\iis express\PHP\v7.4\php.ini

MySQL80 .NET 4.6.1 IIS Application pool using .NET CLR v4.030319 - Integrated

web.config (copied from 2012 install) - SSL is installed and working correctly:

<pre>
    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
     <system.webServer>
      <rewrite>
      <rules>
        <rule name="Force non-WWW" enabled="true" stopProcessing="true">
        <match url="(.*)" />
        <conditions logicalGrouping="MatchAny">
        <add input="{HTTP_HOST}" pattern="^(www\.)(.*)$" />
        </conditions>
        <action type="Redirect" url="https://{C:2}/{R:1}" appendQueryString="true" />
        </rule>
            <rule name="WordPress: https://xxxxx.com" patternSyntax="Wildcard">
                <match url="*" />
                    <conditions>
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    </conditions>
                <action type="Rewrite" url="index.php" />
            </rule></rules>
       </rewrite>
      <httpErrors errorMode="Detailed" />
     </system.webServer>
    </configuration>   
</pre>

No modifications to anything - co-lo hosting set up everything. I'm not a server expert but have access and can follow directions.

php
wordpress
windows
iis
asked on Stack Overflow Jun 3, 2020 by dcass • edited Jun 3, 2020 by dcass

1 Answer

0

first, create phpinfo.php under the default site folder path. and browse the page and get the PHP installed path and version.

enter image description here

Open the command prompt and go-to PHP binary folder. In this demo, it is C:\Program Files\PHP\v7.3 folder.

Type the below command to view the available modules in the PHP.

php –m

If PHP dependencies are installed correctly it will show the list of available modules in PHP or it will show the error like below.

enter image description here

It looks like Visual C++ is missing on the server. Google the VC++ and install it.

install Wordpress by using Web platform installer.

make sure you install iis cgi feature.

assign iis_iusrs and iusr permission to the site folder.

reference links:

https://docs.microsoft.com/en-us/iis/application-frameworks/install-and-configure-php-applications-on-iis/install-wordpress-on-iis

answered on Stack Overflow Jun 4, 2020 by Jalpa Panchal

User contributions licensed under CC BY-SA 3.0