Just found out that my 3-year-old Intel NUC8 has got a new BIOS release 0090 recently. I downloaded and upgraded it without think twice (which is going to waste some of my time later.)
I have two OS installed and dual boot configured on the hard drive. Windows 10 alongside with Ubuntu Desktop. By default, it will boot into GRUB menu by default, where I can choose whether or not to boot into Windows.
I have done BIOS update for this NUC several times before. But this time, after the new BIOS update, the machine boot directly into Windows without showing the GRUB menu. I tried to hit F10 on-boot to bring up the Boot selection menu to choose another EFI boot-loader — but something weird is: There is only one “Windows Boot Manager” up there, the “ubuntu” boot entry is missing.
Recently I enabled Cloudflare CDN for a website. At the beginning, everything went fine. Until there is one day, I was trying to renew the Let’s Encrypt certificate for the domain by using the acme_tiny.py program, which I always use. However, this time it fails again and again, on the error: cannot download http://****/.well-known/acme-challenge/**** .
In short, before issuer (Let’s Encrypt) signs the certificate, this program will generate a challenge file in a specified path under the domain. Then issuer will try to fetch the challenge file, to make sure the requester is the real owner of the domain.
I tried use wget to download the challenge file, and got a 404 error. By break down the wget output, I found that, when request the challenge file via http, the request was redirected to https, that is the cause of the error. Because the origin server only have acme-challenge configured on port 80, so when you trying to access it from https the only thing you will get is the 404 error.
Because I always use the program to renew certificates, so this time I wonder if it is the CDN caused the error.
In addition, one thing makes me feel weird is, the origin server not have https rewrite configured for the acme-challenge path, so why the http request is being redirected to https automatically? After some digging around, trying to adjust some Cloudflare options, finally, I found out: the option “Always Use HTTPS” (under the SSL/TLS –> Edge Certificates section) is the root cause of this error. With this option turned on will redirect all http requests to https automatically. That is why the http request to fetch acme-challenge file got redirected to https.
After turned off this option, the acme_tiny.py program worked flawlessly like before and I got the Let’s Encrypt certificate renewed successfully.
Conclusion for this time, when have CDN enabled for a website; the configurations of the CDN might cause some unexpected issues to happen, like this time. When the origin server is not the cause of the problem, should turn to investigating CDN’s configurations, to figure out whether the CDN is the causing the problem.
Cloudflare option under SSL/TLS -> Edge Certificates: always use HTTPS.
When I was cleaning up my computer’s disk space, I noticed that the Chrome directory under AppData\Local\Google took almost 10 GB spaces, especially the directory File System, which is using 7.87 GB of disk space. In the File System directory, one largest directory used most of the space named 017. In this directory there are 9 very large files in it, each one is around 900 MB, and all of them were created on last November.
The “File System” directory used 7.87 GB of disk space.
After googling around, I found this article is useful:
Quote: “Chrome (and Chromium) use the folder to store files stored with the help of the File System API which is part of HTML5.”
So, it looks like some web service were using File System API stored these data on the disk. But I can’t remember which website I used could take up almost 8 GB data on my disk.
Only thing I can do now is to delete these files, and monitor the File System directory frequently to see if there is any unusual amount of space used by this directory.