Yesterday, the site crashed. I was locked out of everything. Also, the site was returning the internal server error, message 500, to all visitors. Well, a long time ago, I learned not to panic about such things. It doesn't pay to panic.
Of course, it's unfortunate when your site goes down. Visitors, especially new visitors, are unfavorably impressed and may not revisit a site to see if the problem was just temporary. Not only that, but I just registered the site yesterday with various directories — what timing. Thanks Satan.
Of course, there's always the flipside to that. What I mean is that God always shows things during trying times and events. He shows things all the time, but they can really stick out during the trying times. What good has come out of a WordPress crash, not that I want to have another any time soon?
So, what happened, why am I telling anyone, and what did I do about it?
WordPress allows for many plugins, just as browsers do (especially Firefox). A relatively new feature with WordPress is one-click upgrade of plugins.
Now, I have many plugins installed. I don't have them all activated (which is not exactly the same thing as being enabled by the way but close). The reason I keep deactivated plugins installed in the same directory or folder as the active plugins is so I will be automatically notified when updates are available. Many times, updates clear up the problem I had with the plugin's earlier version. Also, it helps to keep me from downloading plugins I already tried but that caused some sort of problem (incompatibility with other plugins, etc.).
Yesterday, there was an update available for the "Share This" plugin that I had sitting there deactivated. I clicked the one-click upgrade. Well, the download stalled. I was having lots of Internet-connection crashes yesterday. Sometimes I can go several weeks without an interruption. Some days I have to reinitialize my router or wireless about every hour. My site was also exceptionally slow and stalling out a lot.
So, I closed the page to start over, which I've done before without any problems, only this time, I was instantly cut off from the administration and public site.
Here's what I ended up doing.
I used FTP to rename my plugin directory. That instantly let me back into the administration pages. I named the directory back again. All the plugins were still there with the exception of the "Share This" plugin that I had moved from the HTTP server just in case. Doing this renaming deactivated all the plugins. It also caused WordPress to forget what had been recently deactivated. So, there I was with all my plugins and not being able to remember which were active and which were deactivated before the crash. I remembered many of them, but not every last one. Also, some of them will work, but will cause some subtle problem.
I've gotten into the habit of editing the description line of each plugin to say in all caps and bold what my issues are. I started that long after I deactivated many plugins though and couldn't recollect every reason I deactivated. Remember, becoming a WordPress administrator is a learn-as-you-go proposition.
Well, I thought, "Why not just restore my backups?" I have daily backups. I had forgotten though that my web hosting has an uploading database-file-size limitation. I had only had to upload once. That was to restore all my tags that were lost due to a plugin change. I broke up the tag file manually. I wasn't about to do that with the entire back up file for the whole blog. It's huge. There is a program that can help with that called Big Dump. It looks useful, but it was late, I was tired, and I just didn't want to work with it right then. There had to be another way.
The first thing I did was load the public home page. All I got was a blank with an error message on the title line in the browser. It was truncated, so I did a source view. That allowed me to tell which plugin was involved. I activated that plugin, and that allowed my header to load and a bit of the index. The header and index are parts of the whole page you see when you view a dynamically created webpage. The header is fetched and the other parts and assembled for you to see. The only exception I know of is where caching is involved. I also use caching on this website.
I had to activate the cache plugin, purge the cache, and then disable the plugin in the plugin settings. That way, I could check the effect of turning on each plugin one at a time. I had two browsers open to do this. One was to check how things look to regular visitors who are not logged into the site. Many times, the administrator can see things in the public pages and post that a non-logged in visitor is blocked from seeing.
I turned on each plugin that the public pages were telling me were issues. Pretty soon, the whole site was viewable again but with holes where plugins were still deactivated. At least the pages were loading all the way to the end of the footer. Now, the site was wide open in terms of anti-spam. Therefore, I started up everything that had to do with "security" next. Then I went back to the top of the pages and posts with comments in particular and went down each column looking for the holes. Activating each plugin and checking by reloading (refreshing) each page in both browsers. (Note here that I have caching turned on in my browsers but I have them set to check for changes. I learned that valuable lesson some ten years ago if memory serves.)
So, I finally bumped into a plugin that kept me from seeing anything but a blank page. I had gotten back to where I was before the crash, but I had actually fixed and tweaked some things along the way.
A valuable habit I'm starting as of today is that I will always clean the section on the WordPress plugin admin page that says recently activated plugins. WordPress cleans that part of its log after 7 days, but I'm going to do it manually the moment I'm sure I don't need that log info. Here's why.
I'm also doing a save-as of the page after every change. That way, I will always have the last list of what plugins were active versus deactivated if I run into another crash situation.
The other thing I'm going to have to work on is finding a way to back up the database tables in bite sizes acceptable to the web host's configuration. I can do that manually, but who wants to take the time each day to log in and run backups manually. I don't. I want a backup system that is built with this restore-issue in mind. Maybe there's one out there already like that since I'm certainly not the first person to have run into this, hence "Big Dump" mentioned above.
Well, I hope this will help some people who feel depressed, frustrated, angry, and even panicky.
If so, let me know. Leave a comment about it.
The following should appear at the end of every post:
According to the IRS, "Know the law: Avoid political campaign intervention":
Tax-exempt section 501(c)(3) organizations like churches, universities, and hospitals must follow the law regarding political campaigns. Unfortunately, some don't know the law.
Under the Internal Revenue Code, all section 501(c)(3) organizations are prohibited from participating in any political campaign on behalf of (or in opposition to) any candidate for elective public office. The prohibition applies to campaigns at the federal, state and local level.
Violation of this prohibition may result in denial or revocation of tax-exempt status and the imposition of certain excise taxes. Section 501(c)(3) private foundations are subject to additional restrictions.
Political Campaign Intervention
Political campaign intervention includes any activities that favor or oppose one or more candidates for public office. The prohibition extends beyond candidate endorsements.
Contributions to political campaign funds, public statements of support or opposition (verbal or written) made by or on behalf of an organization, and the distribution of materials prepared by others that support or oppose any candidate for public office all violate the prohibition on political campaign intervention.
Factors in determining whether a communication results in political campaign intervention include the following:
- Whether the statement identifies one or more candidates for a given public office
- Whether the statement expresses approval or disapproval of one or more candidates' positions and/or actions
- Whether the statement is delivered close in time to the election
- Whether the statement makes reference to voting or an election
- Whether the issue addressed distinguishes candidates for a given office
Many religious organizations believe, as we do, that the above constitutes a violation of the First Amendment of the US Constitution.
Congress shall make no law respecting an establishment of religion, or prohibiting the free exercise thereof; or abridging the freedom of speech, or of the press; or the right of the people peaceably to assemble, and to petition the Government for a redress of grievances.
That said, we make the following absolutely clear here:
- The Real Liberal Christian Church and Christian Commons Project not only do not endorse any candidate for any secular office, we say that Christianity forbids voting in such elections.
- Furthermore, when we discuss any public-office holder's position, policy, action or inaction, we definitely are not encouraging anyone to vote for that office holder's position.
- We are not trying to influence secular elections but rather want people to come out from that entire fallen system.
- When we analyze or discuss what is termed "public policy," we do it entirely from a theological standpoint with an eye to educating professing Christians and those to whom we are openly always proselytizing to convert to authentic Christianity.
- It is impossible for us to fully evangelize and proselytize without directly discussing the pros and cons of public policy and the positions of secular-office holders, hence the unconstitutionality of the IRS code on the matter.
- We are not rich and wouldn't be looking for a fight regardless. What we cannot do is compromise our faith (which seeks to harm nobody, quite the contrary).
- We render unto Caesar what is Caesar's. We render unto God what is God's.
- When Caesar says to us that unless we shut up about the unrighteousness of Caesar's policies and practices, we will lose the ability of people who donate to us to declare their donations as deductions on their federal and state income-tax returns, we say to Caesar that we cannot shut up while exercising our religion in a very reasonable way.
- We consider the IRS code on this matter as deliberate economic duress (a form of coercion) and a direct attempt by the federal government to censor dissenting, free political and religious speech.
- It's not freedom of religion if they tax it.
And when they were come to Capernaum, they that received tribute money came to Peter, and said, Doth not your master pay tribute? He saith, Yes. And when he was come into the house, Jesus prevented him, saying, What thinkest thou, Simon? of whom do the kings of the earth take custom or tribute? of their own children, or of strangers? Peter saith unto him, Of strangers. Jesus saith unto him, Then are the children free. (Matthew 17:24-26)