So today I woke up and went to check on my website to see if anything had happened and see how my new security setup was doing. However, I was instead greeted by Apache giving me the finger. First I would be brought to an empty index page every time I loaded the page, but that quickly evolved into nothing but HTTP 403 errors. I still have no idea what caused the issue to start happening, nothing had changed on the system that I was aware of, however, over night an issue that I found was common while searching on google had mysteriously started happening.
To give a bit of background information on the issue, in Apache 2.4 a change was made which required you to insert a new line of code into your virtual server configuration. I haven’t looked into what the change was or why it wasn’t affecting me until today, however, today I had to spend a couple of hours running around like a chicken with its head forcibly removed trying to figure out why my web server was suddenly broken. In order to fix the issue, all I had to do was simply insert this line of code into my directory .conf file:
Require all granted
If you’d like to learn about what that actually does, please direct yourself to the official Apache documentation. This wasn’t the only issue, however, as I also came to find out enabling CloudFlare actually caused some other problems. Mainly, despite the fact that it was working perfectly fine the day before, the server did not know what domain clients were trying to reach, so it was directing them to the default virtual server instead of the garvinized.com server. As I’m sure you can imagine, that isn’t a good thing. It was actually preventing all access to my website.
Now, to fix that issue all I needed to do was go into my webmin control panel and change it to listen on all domains, however, I did not know that when I started trying to fix this. I again proceeded to run around like an idiot and break things in various ways, causing havoc throughout the server. After about an hour of trying everything I could think of and find on google, I realized a bit of an inconsistency when running the commands
grep -i '<virtualhost' /etc/apache2/sites-enabled/*.conf and
sudo ifconfig which normally wouldn’t have been an issue, however, because garvinized.com was pointed at CloudFlare’s servers instead of my own, Apache appears to have listened for the wrong data. After I realized that fixing the problem was as simple as me figuring out where to change what needed to be changed.
As you can probably tell by looking at this post, I did end up fixing the issues. I don’t know how long the site was down, however, it took me about 3 hours to fix everything. Hosting all of this myself has been a good experience so far, and I’m sure it will be of use in the future if I ever need to work on a website for someone.