How tildes serve user content. The model is the same across town, pink, club, green, envs, and sdf.
Dir in ~ | Served at | Protocol |
|---|---|---|
public_html/ | host.tld/~you/ | http |
public_gopher/ | host.tld port 70 | gopher |
public_gemini/ | gemini://host.tld/~you/ | gemini |
Anything dropped in is live immediately. No deploy step, no build queue: the server is just a web server reading your home directory.
The thing everyone forgets:
chmod 755 ~ # home must be traversable chmod 755 ~/public_html # dirs: 755 chmod 644 ~/public_html/index.html # files: 644 chmod 664 file # communal file: group-write chmod 775 dir # communal dir
The symptom of getting this wrong is a 403 Forbidden on a file that definitely exists. It is always permissions.
Edit locally, push with rsync:
rsync -avhP --delete ~/site/ host:public_html/ rsync -avhP ~/site/ you@tilde.town:public_html/
–delete mirrors exactly. Preview with -n (dry run) first.sshfs works too (sshfs host:public_html ~/mnt), but rsync does not depend on connection quality.~/public_html/index.html in nano or vim, done.~/public_html/feels/ and gopher. See tilde.town Tools.~/.planetfeeds to join it. See RSS by Hand for making a feed./town/square/public_html maps to tilde.town/square. Shared and world-writable. See Town Square.robots.txt and a favicon are cheap politeness.