Tag Archives: broken links

Upgrade to WordPress 4.0 Failed through GoDaddy

WordPress & Godaddy

I got myself into an interesting predicament today.  I was in going to show my mom how to update the church website and saw that there was an update to WordPress 4.0 showing in the GoDaddy console.  I decided to do the update and then that is when things went sideways.

Upon the update finishing I went to the website site only to see a 500 Internal server error message, shown below:

I knew this was not a good sign, and preceded to investigate and my first thought after some Googling was to manually upload WordPress 4.0 files (all of them except the wp-content folder & wp-config file), so I downloaded the zip and preceded to do so.  Once this didn’t fix my issue and the site is for someone else I wanted to rectify the problem as quickly as I could so I contacted GoDaddy support.  Thanks to the patience of Spencer D. and his technical contact we were able to get to the bottom of things.

The first step was to create a web.config file (back up any current one, or in my case where you deleted it, create a new one) that contains the following:

<?xml version="1.0"
encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <httpErrors errorMode="Detailed"
existingResponse="PassThrough"
/>
    </system.webServer>
</configuration>

In my case I am using the IIS 8 Plesk version; however, you should be able to find the correct version for you in this GoDaddy’s Help article if you are using GoDaddy Windows hosting.

You upload this to the root folder for your particular domain and in my specific case this led to me receiving the following when I navigated to the website, stlukesdryden.com, after waiting for a bit:

All-in-One Event Calendar: require(G:\PleskVhosts\dwcryan.com\stlukesdryden.com\wp-content\plugins\all-in-one-event-calendar\vendor\lessphp\lessc.inc.php): failed to open stream: No such file or directory @ G:\PleskVhosts\dwcryan.com\stlukesdryden.com\wp-content\plugins\all-in-one-event-calendar\lib\bootstrap\loader.php:88 #2
All-in-One Event Calendar: require(G:\PleskVhosts\dwcryan.com\stlukesdryden.com\wp-content\plugins\all-in-one-event-calendar\vendor\lessphp\lessc.inc.php): failed to open stream: No such file or directory @ G:\PleskVhosts\dwcryan.com\stlukesdryden.com\wp-content\plugins\all-in-one-event-calendar\lib\bootstrap\loader.php:88 #2
PHP Fatal error: require(): Failed opening required ‘G:\PleskVhosts\dwcryan.com\stlukesdryden.com\wp-content\plugins\all-in-one-event-calendar\vendor\lessphp\lessc.inc.php’ (include_path=’.;.\includes;.\pear’) in G:\PleskVhosts\dwcryan.com\stlukesdryden.com\wp-content\plugins\all-in-one-event-calendar\lib\bootstrap\loader.php on line 88

I now knew that an error in the All-in-One Event Calendar was causing my site to not be displayed.  In order to disable the failing plugin you can apparently either rename the plugin folder located in ../wp-content/plugins or (the way I did it) you can access your database through PhpMyAdmin and search the wp_options table for active_plugins.  I then saw this for the active_plugins option:

32       active_plugins       a:4:{i:0;s:55:”all-in-one-event-calendar/all-in-on…       yes

Editing this row, and focusing on the options_value column you want to delete the plugin information for the message you saw when navigating to your site earlier in this post, which in my case is All-in-One Event Calendar, in bold below:

a:4:{i:0;s:55:”all-in-one-event-calendar/all-in-one-event-calendar.php”;i:1;s:36:”contact-form-7/wp-contact-form-7.php”;i:2;s:24:”wordpress-seo/wp-seo.php”;i:3;s:31:”wp-google-maps/wpGoogleMaps.php”;}

It is important to delete the entire contents from the i to the ; (semicolon) for the plugin in question.  Once I had done this I was able to access my website homepage, though not the login screen (which I rectified by copying over the wp-login.php file, it wasn’t allowing me to copy earlier, because as I later realized I had the page, giving me the error, open in my browser), but no other pages on the site.  I was able to solve the broken links/pages in the same fashion as when I broke them with my publish, you can find it at the bottom of this post.

Worth noting is that Spencer mentioned my WordPress installation was indeed at version 4.0, which jives with what the GoDaddy console under ‘Manage My Web Applications’ states and when I access the WordPress Dashboard for my site it states I am running WordPress 4.0 too, so I’m hoping all is good now.  Well, that is except the Event Page is blank as I have to get the event calendar plugin working, which involves getting the latest version installed.

This process took longer than expected and I felt it was worth blogging about.  Will make sure I have a fair bit of free time on my hands before attempting to upgrade WordPress on this domain.

Subdomain within Main Domain Folder

Well, today I was doing some experimenting and investigating how I could get my Tracker application published to a subdomain through automation instead of manually copying the files every time.  It’s only an MVC template right now but I wanted to be able to test that the default functionality was going to work with my web hosting, prior to proceeding.  Things were going pretty good until I realized that publishing my application broke my WordPress site.  By broke what I mean is that critical files and settings got overwritten causing my site navigation menu to get messed up as well as links to pages not working (404 errors) and only my home page could be displayed.

I hypothesized the cause of the overwrite to be due to the subdomain folder being contained within the root folder for my website instead of up one level so I deleted the subdomain and the folder it was using.  I then recreated it so its root folder is at the same level as my main sites root folder.  Apparently trying to organize your subdomains within your root domain folder is not a good idea.

I was then able to follow the steps again to publish a web application, which I outline here.

I took the opportunity of my site already being broken to install the latest WordPress update.

Since my incorrect publish broke my custom links I determined how to fix this was from my WordPress dashboard you go to Settings -> Permalinks and switch the option to Default and save your changes.  Then you switch it back to your custom selection and save the changes again.  Prior to discovering this not even deleting the pages permanently and recreating them removed the 404 error for me.