Hi everyone, I’m Le_Zozoien, for the first article of my brand new blog, i’d like to talk about how i set it up
Step 1 : Pre-Blog
1 : The domain
I saw a video not long ago from NetworkChuck on how to setup a cloudflare tunnel to self-host a website. I was hyped to see that I only needed a domain name and a server to host whatever services I wanted. So i bought this domain and setup a tunnel.
NetworkChuck’s video
2 : The server
Then of course, i needed a server. I’m living in France, and in my region they offer a PC for us to “study” with. The thing is, that I already had another computer to use at school, so instead of using the free PC at school, I installed Linux (Kali but then switched to Ubuntu server) on it and made it a home server.
3 : The tunnel
Then I set up everything on cloudflare (DNS, tunnel, …) and in no time, I could open a terminal remotely on the server from anywhere. But I wasn’t satisfied by using a tunnel
4 : My box
I went inside my box and found out that i had a dynamic IP, what a bummer. So is the project dead ? Of course not, I searched on forums and saw that I could get a static IP for free just by enabling it on the customer dashboard (i guess they don’t have enough IPs to enable it by default), so I did and I got one. I setup a port forwarding and added an A rule on the cloudflare dashboard to redirect blog.lezozoien.com to my IP? It worked, and i could then SSH into my server without the tunnel. But now, what’s next ?
Step 2 : My blog v1.0
1 : Apache
I installed Apache2 on my server (sudo apt install apache2
) and setup a very basic HTML page in /var/www/html
just to see that it worked, nice.
2 : The WordPress hell
By myself…
To begin with, i downloaded the latest version of WordPress and extracted it to /var/www/html
. Then i installed the remaining components (PHP, MySQL), and set up MySQL by setting a username, password, … .
For WordPress, i also changed the permissions for the files in /var/www/html
by using
sudo chown -R www-data:www-data /var/www/html
sudo find /var/www/html -type d -exec chmod 755 {} \;
sudo find /var/www/html -type f -exec chmod 644 {} \;
I then tried to start the WordPress installation by going to the web page. I think I messed up multiple things multiple times, because I had to retry about 5 times to get it working.
… then with a friend …
Once I had it working, I went to sleep and the next day, I asked a friend of mine to help me set up the “blog” part of my “blog”. But there was a problem (or multiple, I still don’t know), we already ran into issues when we tried to install Astra (my WordPress theme) because it said something like “enter FTP of SFTP key” or something like that, which i didn’t know. We ended up getting it working by downloading the theme remotely on a SSH terminal and extracting it to the “Themes” folder in the WordPress directory.
What was worse though, was that when I tried posting a page or a post, every single time i got an error saying something like “it appears you’re offline”. Well yes of course, I’m able to open a SSH terminal and visit the blog remotely but I’m offline, what a smart server. When I got home, I reinstalled everything and disabled the cloudflare proxy thing, and this solved my issues.
… then again by myself
Now that WordPress finally worked, I reinstalled Astra, and set up the blog, which was easier said than done, because I still had no idea what to put on it. But before I even had a chance to think about it, the same friend as before told me something like “Ahaha t’es trop nul t’utilises toujours Apache c’est vraiment guez utilise Nginx”, which would translate to “Lmaooo ur so bad ur still using apache it’s so bad go use Nginx” (I still don’t know how we get along).
Step 3 : My blog 2.0
1 : Nginx
I installed this thing called Nginx, and tried to set it up. But I didn’t understand a single thing in the videos I watched, so of course what I tried didn’t work. So I removed the configuration file in /etc/Nginx/sites-available
that I had changed, and created a new one to start over. This time, it worked, but from the beginning I still had no SSL certificate, so my blog was still using http. This was the next thing i wanted to fix
2 : HTTPS
Ok, I lied, my Nginx configuration was still not perfect, because somehow when I tried to use certbot to get a certificate, I got an error and couldn’t get one. So I deleted the configuration files once again, and started over but this time I even deleted the Nginx.conf
file. After some very intense typing (something like 7 lines) and no help at all from youtube videos (this one helped me a lot), i finally got it working again, but this time when i launched certbot, IT WORKED !
I finally had a website that used https !
Step 4 : What’s next ?
I still want to improve what’s on my domain, so this is a list of what I’ll try to do next :
- Get indexed in google (be able to be a result of a google search)
- Host other services (maybe plex, minecraft, I don’t really know)
- Host my own email
- Maybe a teamspeak or a chat or something
I hope you enjoyed this first article, I’ll try to post more of them if I do one of the things on the list
Anyways, see ya
What a banger blog, I’ll keep an eye on it!
It teach me how do to a blog thank you!
So true ! You have a vision of the interweb !