Stories
Slash Boxes
Comments

SoylentNews is people

posted by janrinok on Tuesday March 11, @07:23PM   Printer-friendly
from the self-hosting-for-the-win dept.

These days most ISPs allow self-hosting to some extent. Programmer Mira Welner has published a 15-step tutorial to getting a working static web site up and running on a Raspberry Pi:

While tutorials abound in regards to getting a basic webserver set up, there is a difference between a functional server and a good usable website. I've been working on getting my personal site set up over the course of the past five years, spending an hour or so every month working on improving the Pi. I never intended for this personal project to become so lengthy or complex, but eventually I ended up with a fairly robust system for running, maintaining, and editing my website. This tutorial will describe what I've learned throughout the process of creating this site in 15 steps, so that you can use it to create and maintain your own sites.

This tutorial assumes that you already know how to use the command line, and that you have some understanding of HTML and CSS. That is about it.

Any always-on system is going to need to draw as little current as possible, and it is hard to beat a Raspberry Pi Zero 2 W which uses under 150 mA. This tutorial stands out as better than most others because of the small details filled in necessary to go from "Hello, World" page to a working, public web site.

Previously:
(2025) AI Haters Build Tarpits to Trap and Trick AI Scrapers That Ignore Robots.Txt
(2025) A Better DIY Seismometer Can Detect Faraway Earthquakes
(2024) How the Raspberry Pi is Transforming Synthesizers
(2023) Free Raspberry Pi 4B in Abandoned Scooters
... and many more.


Original Submission

 
This discussion was created by janrinok (52) for logged-in users only. Log in and try again!
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 3, Informative) by KritonK on Wednesday March 12, @06:50AM (1 child)

    by KritonK (465) on Wednesday March 12, @06:50AM (#1396114)

    This article seems to provide instructions for installing the OS on the Raspberry Pi, and generic instructions on how to set up Apache, which is what I suspected from the article's title. In addition, it contains a couple of mistakes, such as not setting up the Raspberry Pi with a static local address, hoping that the address given by DHCP will not change often(!) and obtaining an SSL certificate before registering a domain name, which will not work with certbot. It also goes into a lot of detail on how to set up port forwarding using a Netgear router, which is not going to be of much use to people who would actually find this article useful, but have a different brand of router.

    I think that the TL;DR from that article is that if you want to set up a web server on a low power machine, don't use third party javascript, which will probably be bloated and make your site slow. Their recommendation is to write your own javascript. The recommendation of SN readers would probably be to not use any javascript at all; do you really need javascript for a static site?

    Starting Score:    1  point
    Moderation   +1  
       Informative=1, Total=1
    Extra 'Informative' Modifier   0  
    Karma-Bonus Modifier   +1  

    Total Score:   3  
  • (Score: 3, Informative) by canopic jug on Wednesday March 12, @07:31AM

    by canopic jug (3949) Subscriber Badge on Wednesday March 12, @07:31AM (#1396116) Journal

    You'll never need javascript on a static site. It is "useful" on web apps where HTTP is used to deliver a bloated program to the client to exploit the browser as an inefficient, insecure virtual machine. On a static site, you can do formatting, layout, and a bit of interactiveness using CSS.

    If the static site is larger, one way to accomplish standardized menus, headers, footers, and other repeating information would be to ratchet up to Server-Side Includes [apache.org]. Apache2 can do them "NOEXEC" but Nginx only allows "EXEC" equivalent. However if you are the only one using the device then exec/noexec is not an issue.

    ...
    <body>
    <!--#include virtual="/header.html"-->
    <!--#include virtual="/navigation.html"-->
    ...
    <!--#include virtual="/footer.html"-->
    </body>
    ...

    --
    Money is not free speech. Elections should not be auctions.