{"id":29,"date":"2022-06-25T04:12:25","date_gmt":"2022-06-25T04:12:25","guid":{"rendered":"http:\/\/raehaltech.com\/?p=29"},"modified":"2022-06-25T04:33:15","modified_gmt":"2022-06-25T04:33:15","slug":"back-online","status":"publish","type":"post","link":"https:\/\/raehaltech.com\/index.php\/2022\/06\/25\/back-online\/","title":{"rendered":"Back Online"},"content":{"rendered":"\n<p>After a bit of down time I have started to get my website back online. I still need to sort out a theme and create some posts but the technical work is done.<\/p>\n\n\n\n<p>My issues started because I had used a website host that gives you a free domain name when you sign up to host your website on their system. I hosted my site on their system for a while but the editor was not very good. I couldn\u2019t make a website that I wanted. I moved my website to another host. This worked fine for a while but the original company decided you had have domain name and host services with them together or you had to move from their services.<\/p>\n\n\n\n<p>I moved my DNS to a new company that primarily provides DNS services to lock down my domain names. There was a bit of back and forth with tech support at the old provider and the new provider to get the process completed. It was mostly making sure I really was who owned the domain names. I didn\u2019t want to get caught in a similar situation so I didn\u2019t publish a new website right away. After some testing I decided to go in a bit of a different direction.<\/p>\n\n\n\n<p>I am not using a standard hosting provider. I decided to build my own server in Google\u2019s cloud (after some testing of various options) and set up my own LAMP (Linux, Apache, MySQL, and PHP) server. I have used Linux for a lot of various projects so there is no administration issues that I anticipate and I am familiar with MySQL, Apache, and PHP. Google offers several distributions of Linux and I ended up using Ubuntu Server 22.04 LTS. I am most familiar with Debian varieties of Linux so I wanted to stay in that family. I use Linux Mint and Kbuntu on a couple of my personal computers.<\/p>\n\n\n\n<p>There are a lot of guides online that explain how to do this but I had to configure my LAMP server manually. Normally you can install a package called \u201c<em>tasksel<\/em>\u201d and then use that install a \u201clamp-server\u201d package.&nbsp;<em>tasksel<\/em>&nbsp;just saves time by combining a lot of commands into an easy script. The option seems to be missing from&nbsp;<em>tasksel<\/em>&nbsp;in the Google Linux image.&nbsp;<em>tasksel<\/em>&nbsp;did give me a webserver option, as pictured below, but I am not sure what that would have done. Normally LAMP Server is a listed option in the list when you don\u2019t use the command line.&nbsp;<em>tasksel<\/em>&nbsp;did install PHP plus some other packages when I used the traditional command but MySQL and Apache were missing.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"642\" height=\"386\" src=\"https:\/\/raehaltech.com\/wp-content\/uploads\/2022\/06\/putty_QDRRXK5J0f.png\" alt=\"\" class=\"wp-image-27\" srcset=\"https:\/\/raehaltech.com\/wp-content\/uploads\/2022\/06\/putty_QDRRXK5J0f.png 642w, https:\/\/raehaltech.com\/wp-content\/uploads\/2022\/06\/putty_QDRRXK5J0f-300x180.png 300w\" sizes=\"auto, (max-width: 642px) 100vw, 642px\" \/><\/figure>\n\n\n\n<p>After getting the packages installed I was able to configure everything. Ultimately I am using Apache 2.x, MySQL 8.x, and PHP 8.1. Even without the use of&nbsp;<em>tasksel&nbsp;<\/em>the manual integration was so easy as I just need to install a few packages using these two commands. I am not sure I will use all the extra php modules but the apache mod and mysqli packages are a must.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>sudo apt install libapache2-mod-php<\/li><li>sudo apt install php-{curl,intl,zip,soap,xml,gd,mbstring,bcmath,common,mysqli}<\/li><\/ul>\n\n\n\n<p>I also need a way to transfer files to and from the webserver so I added the package&nbsp;<strong>vsftpd<\/strong>. I configured the software on Ubuntu and made sure it required SSL. This process required creating a local user to log into the FTP server and making an SSL certificate for the requests. Google Cloud doesn\u2019t allow user\/password sign in by default, everything is done with SSH keys. Once the host was ready I added firewall rules in the Google Cloud Dashboard under the VPC network area.<\/p>\n\n\n\n<p>Everything is configured and working and that\u2019s where this post comes in. This will be the first addition to the new website.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>After a bit of down time I have started to get my website back online. I still need to sort out a theme and create some posts&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[4],"tags":[],"class_list":["post-29","post","type-post","status-publish","format-standard","hentry","category-website-maintenance"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/posts\/29","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/comments?post=29"}],"version-history":[{"count":1,"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/posts\/29\/revisions"}],"predecessor-version":[{"id":30,"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/posts\/29\/revisions\/30"}],"wp:attachment":[{"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/media?parent=29"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/categories?post=29"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/raehaltech.com\/index.php\/wp-json\/wp\/v2\/tags?post=29"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}