This article will help you in selecting domain and web hosting providers, along with other aspects of running and maintaining a website. Not much has changed between 2019 and 2023.
.com is now lame. Everything is taken. You want a short domain name. Take advantage of all the new TLD's, and all the country codes. Be inventive and use a complete word that has the TLD included. Use misspellings. For example, register a domain name like sereni.li (serenity). A thesaurus is helpful.
The following sites can help you come up with a domain name:
https://www.wordhippo.com/what-is/word-finder-unscrambler.html
https://datayze.com/alternate-spelling-finder
https://tld-list.com/tlds-from-a-z
https://tld-list.com/tld/li ← just replace the li with the tld you want to try
Way back in the day I read warnings that you shouldn't have the domain name registrar and web hosting provider be from the same company.
Your site could have a DDOS attack, or have a server crash, but you can still reach the registrar and point your domain to another host. Or, if you are running a pirate domain, and the government wants to shut you down, they will more than likely go after the domain registrar to take down the website. It's nice to have your actual website files with another company, so not all your eggs are in one basket.
Pay attention to the renewal cost when comparing registrars. Sometimes registrars offer a promotional price for new registrations. If you can lock in a promotional price for 5 or 10 years, then in the future you can still transfer the domain to a different registrar if the renewal price is exorbitant.
I chose NameSilo, because they have good prices for .com, .net, and .org domains, and because they are one of the top 15 registrars. I prefer not using one of the top 5. I am monopoly-averse. NameSilo has a third the number of domains as NameCheap, which I also have some domains with. I think the biggest registrar is Godaddy. NameSilo on Reddit/SelfHosted
The one setting that must be configured with the registrar, is pointing the domain to the web hosting.
Pointing the domain to the hosting server
https://www.namecheap.com/support/knowledgebase/article.aspx/9837/46/how-to-connect-a-domain-to-a-server-or-hosting
https://www.hostinger.com/tutorials/dns/how-to-point-domain-to-vps
Accessing your site before DNS propagation is complete
Use a URL supplied by your hosting service.
Open the hosts file on your computer and you should see an entry like this :
127.0.0.1 localhost
To create a new mapping for your domain, add the following line and save:
ip-address-of-server your-domain.tld
A more thorough explanation, icdsoft.com
Install a web browser extension that provides domain mappings, such as LiveHosts for Chrome
If you use Blokada on Android: How to create your own Host list.
You can also use this trick to bypass a CDN or load balancer in case of a malfunction. You can also measure the supposed improvement in page loading time afforded by a CDN.
Freenom offered free tk, ml, ga, cf, gq domains, but the odds were against them. For example, news about their ga domain from InfinityFree. At the moment the Freenom interface is active but yields no results, so it's better to go to the origin registrars listed below. The registrar industry is financially motivated to take down free competition and set domain sales at a price which will provide the most profit. Also, the free registrars may be unscrupulous, although the accounts I've read are anecdotal.
GetFreeDomain.name offers reviews of the free domain registrars, with advice of why you may want to avoid, like on the tk page. GetFreeDomain.name been around a while, and browsing the 2011 version of the site is interesting.
Nic.free upcoming!
Dot.tk
Point.ml
Mon.ga no longer free.
Dot.cf
Dominio.gq
I have chosen shared hosting, as it is economical and gives me enough control to make the sites I want, without having to maintain a server on my own. You can have a managed VPS, or managed VPS Cloud, but that costs more.
My requirements are:
Nice features:
Because I use Dokuwiki with many plugins:
Though free hosting will not likely have responsive technical support, you can also make use of their forums.
Review sites make money by affiliate links. They won't make money by recommending a free hosting service, so they don't review popular hosting services like HelioHost or InfinityFree.
Hosting sites paying for advertising will also pay to defame free hosting services. In a strategic manner so as not to increase awareness of free hosts.
Before finishing my research and coming to this conclusion, I renewed for 4 years with Hostinger. If I have time I will be trying free hosting options and reporting results here. I currently have sites on Hostinger and BigBytes.
Suggested review sites from this web hosting reviews directory:
http://www.reviewhell.com
http://www.hrank.com
themeisle.com
http://hostadvice.com
http://hostingfacts.com
https://www.hostsearch.com has a search by country feature.
Is the web hosting service a reseller?
Fraud Rating by Host IP Address
There are analytics sites that rate web hosting servers based on IP address. Supposedly, some web hosting servers may have a larger percentage of clientele with shady websites, and even if you are an angel, being hosted on the same server can make you look bad. Supposedly, search engines may lower your site's search rank because of its place on a server of bad reputation. This could apply to websites on the same IP address in shared hosting and also apply to dedicated IP servers within an organization's IP range. Quora, could this be true?. Apparently not.
Offshore hosting can be beneficial when you don't want local authorities to have power over your website. One good choice for offshore hosting is Iceland, since it is a country that values freedom more so than the U.S1. Icelandic hosting services include 1984 (the most used host in Iceland, named after the dystopian novel), OrangeWebsite, and Flokinet.
Local Hosting for Lower Latency
A server in the country of your target audience will reduce latency and decrease website load times. You can see the distances a request has to travel on a map of the undersea fiber optics throughout the world. From NYC, hosting at www.host.md (md for Moldova) had ping response times averaging 150ms, whereas a U.S. based host I've been using had response times of 40ms. Google.com responds in 15ms, since they want to be as close to you as possible, and have a net of servers nearby everywhere. Website load times depend on many many round trips so the milliseconds add up.
That said, if you have a lightweight website, the load time from anywhere in the world will still be under 2 seconds, as recommended by SEO.
Also check out free hosting recommendations from GetFreeDomain.name and AlternativeTo.net.
Heavily advertised hosts:
Free Hosting Services listed at BlackHatWorld
BlackHatWorld.com forum post in 2018
FreshPing and Pingdom are no longer free
Based on Tanya's Recommendation, along with the likes on alternativeto.net, I'm using FreshPing. I used to use Pingdom. I like the UI on FreshPing a lot better. On the site that I used Cloudflare, I was able to track if it was Cloudflare or my site that was having issues.
I have this site on bigbytes.net shared hosting. It's performance has been pretty bad according to hrank. I started with bigbytes over a decade ago.
One thing bothering me currently is that unlike a bunch of sites (google.com, cnn.com, a hostinger host, thenewleafjournal.com, etc), both mekineer.com and bigbytes.net cannot respond reliably to ping requests.
Despite the dropped packets seen above, the site seems to load reliably for me. Can I rely on freshping or pingdom to tell me if my bigbytes hosting service is reliable? Can I rely on the server load display in cPanel? The thread on StackExchange states: “The best way to tell if any given remote service is alive is to ask it to service a request in the way it's meant to - in fact it's the only way to truly know something is working correctly.”
So I tried a free go at the loadster.app website. This online app tests the website under load. The results are rather long so click below to expand the section. Looks like the server just stopped responding through some of the testing.
I also tried clearing my browser cache before loading my site. I then notice that my site takes forever to load. So new visitors probably are discouraged from visiting because of the long wait.
One way to track website performance is with a logging tool installed on the server. The logging tool requires that JavaScript be run on the user's web browser, so incomplete downloading of a web page will not be recorded. Incomplete logging will be exacerbated by a server that becomes unresponsive under load.
An analytics tool that includes a performance plugin is Matomo. Matomo can be installed from cPanel. With Matomo I can see average load times per day per page.
Matomo page performance metrics
Network time (connectEnd – fetchStart)
How long it takes (in seconds) to connect to server. This includes the time needed to lookup DNS and establish a TCP connection. This value might be 0 after the first request to a domain as the browser might cache the connection.
This part should not be so complicated, but it is. Some hosting services offer Anycast DNS to reduce the time in the last step.
catchpoint.com.
Server time (responseStart – requestStart)
How long it takes the server (in seconds) to generate page. This is the time between the server receiving the request and starting to serve the response.
According to Google, server response time should be under 200ms.
Transfer time (responseEnd – responseStart) How long it takes the browser to download the response from the server. Technically speaking, this is the time between receiving the first byte until the response is complete.
DOM Processing time (domInteractive – domLoading)
How long the browser spends (in seconds) loading the webpage after the response has been fully received and until the user can start interacting with it.
Reasons for a zero or high DOM processing time.
DOM Completion time (domComplete – domInteractive)
How long it takes for the browser to load images/videos and execute any Javascript code listening for the DOMContentLoaded event after the webpage has loaded and a user can already interact with it.
On load time (loadEventEnd – loadEventStart)
How long it takes (in seconds) for the browser to execute Javascript code waiting for the window.load event (when the DOM was completely rendered).
Page load time
How long it takes (in seconds) to load the whole page, from requesting a page until it is fully rendered within the browser. This is the sum of all previous metrics. If you only track one metric this is it! We recommend you aim to keep this under 2 seconds where possible.
After a month of looking at different tests, there was a lot of variability. Bigbytes.net speed is unreliable. While sometimes giving good results, the server load, and the server's available bandwidth must sometimes become saturated.
I asked bigbytes why the server is experiencing so much downtime. They said some of their clients have been experiencing DDOS attacks. “We make every effort to counteract the attack, but often it feels like playing a game of whack-a-mole.”
Some web hosting providers include a free CDN service, usually found as a cPanel plugin you can enable.
CDNs use Anycast for lower latency
Lower latency, a speedier website, can be had by having servers everywhere like Google.
When you type in a web address in your web browser, a DNS server translates that into an IP address. The IP address is what the web hardware uses to route your request to the website's server. DNS resolves one web address to one IP address, except, that using a certain technology called Anycast, one IP address can exist in more than one location.
“In anycast, a collection of servers share the same IP address and send data from a source computer to the server that is topographically the closest. This helps cut down on latency and bandwidth costs, improves load time for users, and improves availability.” imperva.com.
It may be silly, but many many round trips between server and client are required in loading a single web page. By sending all the data at once to a closer server, thereafter those round trips can take mich less time.
Anycasting is a form of Load Balancing. Anycasting is used by CDNs (Content Delivery Networks).
“Anycast per se doesn’t have information on service specific health status, which might result in requests being sent to locations which do not have a healthy instance of the service running. It is then necessary to think about service specific healthchecks.” usenix.org pdf
Cloudflare offers this Anycast feature. I bring up Cloudflare because it dwarfs other CDN providers with its market share. While Cloudflare has a free plan that may speed up load times, it is not without issues:
CloudFlare delivers great DNS speeds worldwide and they have a really well designed control panel for managing DNS hosting, combine that with a premium free service and you get a powerful and very attracting DNS hosting solution for bloggers, webshop owners, and anyone else who owns a website. However, what most people overlook is that CloudFlare, in the name of security, every day blocks millions of valid users from visiting the websites that CloudFlare has registered in their hosting service. https://unixsheikh.com/articles/stay-away-from-cloudflare.html
Free unreliable CDN just worsens unreliable hosting
“Best” and “Free CDN” should not be used in the same sentence.
I have used Cloudflare in the past when I was trying to find a better hosting company which I eventually went with the new hosting companies Cloud Servers (yes i understand not the same but it was availability of services being the problem not global distribution)
CDNs that are free are notorious with leaving your visitors with CDN Error Messages and that looks really bad…
CloudFlare which is one of the oldest and some say best CDN services will still leave your visitors with error messages at least on their free accounts.
If most of your visitors are geographically located near your hosting service then you don't really need to worry about a CDN….. if most of your visitors are in the USA and your server is on a decent host in the USA they won't have problems… the problems occur from two things.
You have a crappy hosting service that oversells accounts and there is too much load on your server… or you have visitors from around the world in an equal amount.. meaning you are as likely to have someone from the USA as you are from Europe as you might from Asia..
For most people its that they buy a very cheap hosting account and then want to fix that with a Free CDN… its not a good idea…. you won't see good results…
Even hosts like BlueHost can be crappy on their better packages.. thats why i left them many years ago… I would constantly get notices from BlueHost's admins saying they disabled a script or a wp plugin that was primary to my site functioning because of too much load on their servers.. and I don't use more than about 4-5 plugins that are very resource friendly .. but they were disabling plugins like SuperCache .. how stupid is that? so at first i tried to use a free Cloudflare account just to see if I could get any help from that.. and it actually made things worse..
I ended up going back to my previous hosting company and upgrading to Cloud Hosting and haven't had problems with availability
However Endurance International has since bought BlueHost and I can't say anything good or bad about their current service.. I just know when they were not owned by the new company that there were problems with their hosting and they were a preferred WP hosting site.. but they were as bad as 1&1 or Godaddy back then… hopefully they have improved.. I am sure they must have because there are hosts owned by Endurance International that are good.
You might want to see if your hosting company offers CDN service at a reasonable rate. Some might especially if they are using Amazon AWS
you might want to watch this about CloudFront https://www.youtube.com/watch?v=-EXS9M6yMcA
TLDR: A Free CDN isn't going to help you if you have a crapping bare minimum hosting account and you are trying to compensate. ZippyTheChicken on Reddit
More articles denouncing Cloudflare
https://www.reviewhell.com/blog/cloudflare-makes-websites-slower
http://pagepipe.com/cloudflare-doesnt-guarantee-consistent-load-times
http://www.webhostingtalk.com/showthread.php?t=1666238
https://www.quora.com/What-are-the-disadvantages-of-using-CloudFlare
https://internetdevels.com/blog/pros-and-cons-of-cdn
https://linuxreviews.org/Cloudflare
Nuances of the terms cloud hosting and CDN
The problem with defining cloud hosting is that it is a marketing term glazed over actual definitions.
Because both cloud hosting and content delivery networks rely on a large group of servers, it can be easy to confuse the two services. Not every cloud hosting provider is a CDN, and not every CDN is a cloud computing host — though there can be some overlap. Broadly speaking, the group of servers behind your cloud hosting plan can all be located in the same datacenter. …
Servers in a CDN, however, need to be spread around the world to most effectively deliver content to website visitors. Each server handles the full workload for processing user requests and loading content for nearby audiences.
The high levels of hardware and data redundancy built into both cloud hosting and CDNs make both platforms highly reliable services that can withstand large spikes in traffic and malicious attacks. Pairing the two services provides the most firepower for data-heavy sites with dense databases, dynamic content, or large image and video files. hostingadvice.com
Many sites use the CDN just for static assets (e.g. images), often on a separate domain (cdn.*.com, or just the generic CDN URL, like akamai or cloudflare). In such a case, the CDN sees nothing else.
However, most large sites using a CDN will actually deliver the HTML through the CDN transparently, meaning that the client actually hits the CDN through the site's URL; and the CDN then decides whether to forward the request to the origin, or to handle it itself. You can even let the CDN handle SSL, so https traffic could be handled by the CDN. In that case, obviously, the CDN sees all traffic, including credentials etc.
And yes, the CDN could then capture that traffic. It's a good reason to be careful in picking a CDN. Adrian Bloem on Quora
Google Cloud Hosting claims that CDN is a feature of cloud hosting: “With a global network and ability to offer features like a content delivery network (CDN), cloud hosting also offers better performance and speed than VPS.”
There are two ways to think about cloud hosting and CDNs:
Unless specifically configured, most CDN services fail to deliver a web page if the origin server is down. Aside from static pages, delivery of a page without the origin server is highly complex.
I thought it would be awesome to choose an offshore host and then use CloudFlare for the worldwide low latency. That was before I was fully educated about Cloudflare.
Searching for free CDN options in 2019
CloudFlare has a free single-website account signup. Amazon CloudFront offers 50GB monthly traffic with their free accounts. Though CloudFlare is popular on alternativeto.net website (with nothing else having substantial “likes”). As of 2019, there are other CDN-related free services like Incapsula, jsDelivr, BootstrapCDN, and Coral Content Distribution Network (these are mentioned on mashable.com and internetdevels.com).
I chose Hostinger which included cloudflare integration. What I liked most about Hostinger is that they are quick to answer questions via chat. Also, kudos that they are an employee owned company! Wikipedia
I used Cloudflare for a couple of years. I couldn't get into it. In the end I chose simplicity. Why have a man-in-the-middle? My website loads quickly because it is lightweight, so I shouldn't have need for a CDN. For the Average Joe, CDNs introduce more problems than they solve (see section above). KISS Keep It Simple Stupid.
Update 2023:
Hostinger went downhill. They ditched cpanel and introduced their own “hpanel”, which is marketing-oriented and GoDaddy-like. For example, what takes one step in cpanel to add an addon domain takes 10 steps in hpanel, where you aren't even sure what the heck it is they're asking you despite having years of experience setting up websites.
Also, while they still respond in chat pretty quickly, good luck trying to initiate a chat. You have to navigate the labyrinth that is their automated help to hope to get to the chat option.
To reiterate, the simple solution is to have a reliable and responsive web hosting service, along with a lightweight website, and not use a CDN.
As an intellectual exercise, could a load balancer be used with logging to track hosting service performance?
In the CloudFlare dashboard, I couldn't find load balancing, in the form of being able to input different hosting servers. I didn't see anything like it in their useless-feature-packed user interface. Also, trusting Cloudflare would be its own issue.
Perhaps there is a load balancing service which lets you input two or three shared web hosting servers which host the same web site? Could I set one up myself? HaProxy is an open source load balancer. Nginx is an open source web server with excellent load balancing capacity. cPanel doesn't have load balancing but there has been discussion of adding the feature. Implementation details are at: cPanel Cloud Edition Roadmap.
Hopefully, web hosting services have become like Hostinger with integrated pushbutton SSL service, so you don't need to do anything in the following sections.
Maybe Cloudflare has followed suit since I wrote the section below? When using some CDNs like Cloudflare, SSL communication also happens between clients and the CDN service,
First step is to get CloudFlare for your site. Then logged into CloudFlare, click on Crypto, find the SSL option and get the “Certificate” and “Private Key”. Paste these into Hostinger's Cpanel SSL option (CABundle not required). In CloudFlare, enable “Always use https”. Hostinger also has a https switch in their cpanel. I don't know the implications of both being enabled; I think one is sufficient. No apache htaccess editing required.
The following was the case with bigbytes.net.
If you are on a shared server that already supplies free shared SSL, you can do the following to redirect from http to https. Edit the root .htaccess file for your site, as follows:
The key to redirecting traffic on a global basis is to add the following to the top of .htaccess
RewriteEngine On RewriteCond %{https} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
Your hosting package comes with cpanel, which has a file manager built in. This is the simplest, and has the benefit of working with files directly on the server, so you don't have to waste bandwidth downloading them.
Another way, is to use an FTP client such as FileZilla. This is the traditional way. Each access method has its advantages.
With the FileZilla user interface, the local files on the left column, and remote files on the right. If you right-click on a remote file, and choose “edit”, the file will download to your system's temp folder and launch in a native editor. When you edit and save this file, FileZilla prompts asking if you want to upload the change. However, there is the limitation that you can't use native tools for batch operations on files, such as:
Another way, is to mount the hosting server resource as a local drive. For this, there are programs like WebDrive, NetDrive, and Mountain Duck. Compare this with sync applications such as Google Drive, Mega, or Dropbox, which require a local copy of the files on your hard drive. Either of these methods has the advantage of being able to use native tools when working with files on the server, without having the manual steps of downloading them first, uploading them last.
The protocols used to work with online files as if they were local, are WebDav and SFTP (which is not related to FTP or FTPS). I believe some companies such as Google and Amazon have proprietary protocols for their file hosting, although they may also allow standard WebDav or SFTP connections. (verify) I think SFTP may be superior to WebDav, to use native tools, based on this thread. More info on mounting internet drives in the file sync and backup article.
Sometime between 2006 and 2009, I tried to depart from Gmail or other web-based providers, by having email on my web hosting server. It didn't work out well, because a little too often my messages were getting routed to people's spam folder. Maybe because I was on a shared web host, and thus maybe my server was blacklisted? That didn't seem to be the case, and yet still my messages were sometimes in people's spam folder. Maybe if I paid for a dedicated IP, I wouldn't be blacklisted?
I gave up and started using Google Workspace (formerly known as Gsuite, formerly known as Google Apps, just to confuse the heck out of you). I hoped to return to using my own server for email, but the forces that be made it hard for me to do so.
Back to the present. I used a website to test the “spaminess” of emails from my web servers:
https://www.mail-tester.com
https://mxtoolbox.com
In the results, they recommended using DKIM. So I enabled DKIM in Hostinger's cpanel → emails → “mail service control”. Normally, that would be it, since Hostinger would be the acting DNS server. However, I was using Cloudflare for DNS. So I needed to add the DKIM records to Cloudflare.
In Hostinger's cpanel → advanced → “dns zone editor”, I copied the “host” and “txt” values for DKIM, and pasted them into Cloudflare's DNS records. The records will look like this:
host [ very-jumbled-alphanumeric-string._domainkey ]
txt [ v=DKIM1; k=rsa; p=the-longest-mofo-jumble-of-characters-ever-taking-up-several-lines ]
So on the mail-tester site, I have a score of 10 now, despite not having a DMARC record. Mxtoolbox lists some other issues. I may look into DMARC someday maybe.
carriedils.com doesn't recommend mixing email with web hosting. For example, she cites down-time, and difficulty of setup. However, neither of these bother me much.
Update: I joined a Diaspora pod, and emails from that community ended up in my gmail spam folder. Upon closer inspection, I saw that the email had a DKIM signature. Perhaps the DKIM was not set up correctly? I think Google, Outlook, Yahoo, etc have a self interest to make it impossible to have self-hosted email.
After self-hosting my email for twenty-three years I have thrown in the towel, ycombinator.com
I used gmass.co to test the “spaminess” or deliverability of emails from my email addresses.
3 of 19: A gmail address had 3 out of 19 end in the spam folder.
5 of 18: A molbio.science address with working dkim and spf on hostinger/cloudflare had 5 out of 18 end up in the spam folder.
0 of 19: A protonmail address, and 0 out of 19 messages ended in spam (protonmail would not let me send to the full number of recipients, so I had to wait an hour before trying again. I could only send to 6 recipients at a time, 12 per hour).
2 of 19: A grandfathered gsuite account with my nerdondemand.com domain had 2 out of 19
gmass.co is not affiliated with protonmail.
A factor could be the number of recipients a message is sent to. To be a fair comparison, I would have to send to 6 recipients at a time from all the accounts, but I'm out of patience.
Sending from a server with a better reputation has the best effectiveness? Supported by this reddit tweet: https://www.reddit.com/r/ProtonMail/comments/9oztoc/people_dont_get_your_proton_email
“This can happen with all email providers as every provider has their own custom filtering systems and some false positive rate. If you are a paid user, the @pm.me domain has the highest deliverability rates since it's paid only.” - Protonmail Team
Like with Gsuite (and maybe also regular gmail accounts), you can use protonmail with your own domain: https://protonmail.com/support/knowledge-base/set-up-a-custom-domain
I've been using Matomo. Installation is easy via cPanel Softaculous. It's huge and slow loading. I think disabling plugins you won't use helps.
I disabled the following plugins
I'm interested in trying something else. The article Ditch google analytics now: 7 open-source alternatives, Vladimir Klepov 2023 recommends Plausible and Umami. Image below from Vladimir. See also a thread on Reddit.
The purpose of Apache Mod Rewrite, is to redirect an incoming URL request to a new URL. You modify the original URL to something new, because perhaps you've moved your site to a different directory on the server, or you've changed to a new naming scheme for your pages. If the new naming scheme can be reliably machine translated from the old naming scheme, then you use the rewrite engine. That way, people following links to your page's old location, will still arrive at the new location.
For using Apache Mod Rewrite, you will need to understand some of Regular Expressions. Understand the dot, the asterisk, the question mark, and the () which creates a variable you can call later.
The best way to learn is to try out some expressions at https://regexr.com. They have the entry box pre-filled, so don't let that confuse you: delete it and type your own.
You can also try out your try out your “rewriting” with the htaccess tester at https://htaccess.madewithlove.be
You can also use the cpanel gui instead of manually editing the htaccess file. Basically they have a template for typical rewrites. Accessing your site's cpanel depends on your hosting provider, but can usually be found at your-domain.com/cpanel, or cpanel.your-domain.com (substitute com with your tld). In cpanel look for the redirect option.
The following coding sections are beta. They function but have not been fully tested.
I used to have both Elgg and Dokuwiki installed on this site, and the root page gave you a choice of entering into either application. I ended up using only Dokuwiki. Due to wanting to skip over the root page of the site, and redirect to /dokuwiki, I added the following after “RewriteEngine On” and before the other lines above.
RewriteCond %{HTTP_HOST} ^mekineer\.com$ [OR] RewriteCond %{HTTP_HOST} ^www\.mekineer\.com$ RewriteRule ^/?$ "https\:\/\/mekineer\.com\/dokuwiki\/doku\.php\?do\=index" [R=301,L]
Eventually, I removed Elgg completely, and decided to move Dokuwiki to the root of the site. Since Dokuwiki is portable, this was easy to do, only requiring I move the files. So that any URL pointing to the old location would redirect to the new root location, I removed the previous and replaced it with:
RewriteBase / RewriteRule ^dokuwiki/(.*)$ /$1 [R=301,NC,L]
Overview: https://northcutt.com/seo-checklist/google-ranking-factors
https://www.dokuwiki.org/seo
https://www.quora.com/What-is-an-alternative-to-WooRank
A website's URL is important for SEO. For example: https://mekineer.com/information-technology/2019-web-hosting VS\\ http://www.mekineer.com/dokuwiki/doku.php?id=information_technology:2019_web_hosting
In the past this site:
I followed the steps to use Nice Url's, as described in the dokuwiki documentation, but incoming requests from old links still showed the ugly. This is the normal behavior for Dokuwiki, but I wasn't satisfied. I used htaccess regex to “301” tell user's web browsers and search engines that there is only the one new page, and to stop asking for the old URLs.
Google, the all powerful, say “underscore bad”, unless you are Wikipedia 1. So I renamed all my pages and media with hyphens, and used the plugin “orphans wanted” to clean up internal links. However, existing links created in the past, coming from outside my website, would not find the page's new location. So I used regex to reform the request and provide a 301. The user's web browser then requests the Corrected Nice URL, and the dokuwiki-supplied-regex does it's thing for the internal request.
Here's the current htaccess file dealing with the redirect, before going into the rewriting supplied by the dokuwiki documentation:
RewriteEngine on RewriteBase / RewriteRule ^dokuwiki/(.*)$ $1 [R=301,L] RewriteCond %{QUERY_STRING} ^(id=)([^\:]*)\:(.*)$ RewriteRule $(.*)$ %2/%3 [E=underscores:Yes,QSD] RewriteCond %{ENV:underscores} ^$ RewriteRule ".?" "-" [S=6] RewriteRule ^(.*)_(.*)_(.*)_(.*)_(.*)_(.*)_(.*)$ $1-$2-$3-$4-$5-$6-$7 [QSD] RewriteRule ^(.*)_(.*)_(.*)_(.*)_(.*)_(.*)$ $1-$2-$3-$4-$5-$6 [QSD] RewriteRule ^(.*)_(.*)_(.*)_(.*)_(.*)$ $1-$2-$3-$4-$5 [QSD] RewriteRule ^(.*)_(.*)_(.*)_(.*)$ $1-$2-$3-$4 [QSD] RewriteRule ^(.*)_(.*)_(.*)$ $1-$2-$3 [QSD] RewriteRule ^(.*)_(.*)$ $1-$2 [QSD] RewriteCond %{HTTP_HOST} ^mekineer\.nerdondemand\.com$ [NC,OR] RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC,OR] RewriteCond %{https} off [OR] RewriteCond %{ENV:underscores} ^Yes$ RewriteRule (.*) https://mekineer\.com/$1 [R=301,L]
The above underscore removal was necessary to be multi-line, because of a deficit of the apache rewrite engine.
https://www.impactbnd.com/blog/subdomains-vs-subfolders
I got a super-clear answer on webmasters.stackexchange.com about 301 redirection in the case of this being an addon-domain.
I wanted to duplicate the content of the health section of mekineer.com, on the domain lifehacks.science. Except I was worried about how that would affect the SEO ranking of either domain. A lot of articles are posted via syndication, so I wondered about the SEO effect. After reading many answers on the Quora question: “How does duplicate content on a different domain affect SEO?”, I decided to go ahead and do it, and provide a back link from the lifehacks domain to this one.
Dokuwiki creates a sitemap and pings search engines bing, google, and yahoo to look at it. However, Woorank says there is no sitemap.xml file at the root of the site. I followed the following instructions to create a symlink. The chron job command is:
ln -s /home/<username>/public_html/data/cache/sitemap.xml.gz /home/<username>/public_html/sitemap.xml.gz
(replace <username> with your actual username)
Google's Take on Meta Tags:
https://www.youtube.com/watch?v=RBTBEfd7z_Y
https://www.youtube.com/watch?v=jK7IPbnmvVU
“Meta Description” tag can be used in the search engine snippet:
source
Quora response to how many keywords per page
What do you do with the keywords? Where do you use them? Tom Gustar on Quora says this is the hierarchy of importance:
This is offensive to Google in the same way as Google's “people also search for” feature is offensive to me.
https://www.smashingmagazine.com/2021/06/how-to-fix-cumulative-layout-shift-issues/
Discussion
Web hosting can be very low cost. Dokuwiki software is free. Look at "Researching Web Hosting Options" above. Click to expand the sections within.