Ready for v1.0.0

This commit is contained in:
Christophe HENRY 2021-03-10 11:49:53 +01:00
parent 9b4f33f42f
commit 814dba4078
Signed by: Sbgodin
GPG Key ID: AA24252B9DD684F0
3 changed files with 43 additions and 30 deletions

32
CHANGELOG.md Normal file
View File

@ -0,0 +1,32 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
Security
- Check url encoding: The filename fetched on disk may differ from that was asked by URL.
- Perform sanity checks against unauthorized access.
- Check unicode capability, UTF16 input, etc…
- Manage different type of carriage return: CR CR/LF LF
Development
- Command line API for script, testing, CI…
User interface
- Page menu on upper and lower sides: [parent dir] [root dir] [raw text]
- Images
- Text localisation
## [1.0.0] - 2021-03-10
- Improves presentation and installation page.
- Adds stylesheets and download of pages source code.
- Allows to change stylesheet in the URL.
- Tested successfully on a shared host.
## [0.2.0] - 2021-03-06
Beta version
## [0.1.0] - 2021-03-01
Alpha version

View File

@ -1,25 +1,19 @@
# HtmGem
This program aims to provide access to Gemini pages through a web server.
HtmGem is Php program whose goal is to make Gemini files reachable through HTTP. It can be used on a shared host.
Its in alpha: advanced features available soon.
You can see a demo on the main page of HtmGem:
=> https://gmi.sbgodin.fr/htmgem
## Usage
Place "htmgem.php" on the root of your webserver.
* Copy the directory `htmgem` at the root of the website.
* Access to the directory and follow the instructions.
Your "page.gmi" is reachable using [http://thesite/htmgem.php?directory/page.gmi] with HTML markup:
## Requirements
## URL Rewriting
With Nginx, you can use:
```
rewrite ^(.+\.gmi)$ /htmgem.php?url=$1 last;
```
## Install
php-mbstring is required
So the page is available at [http://thesite/htmgem.php/directory/page.gmi].
* Php v7.3
* `Php-mbstring` module to deal with unicode characters
* A web server (well testing with Apache and Nginx)
* `mod-rewrite` to intercept the Gemini files

13
TODO
View File

@ -1,13 +0,0 @@
Security
* manage url encoding: The filename fetched on disk may differ from that was asked by URL.
* check /etc/passwd not accessible: Perform sanity checks against unauthorized access.
* Check unicode capability, UTF16 input, etc…
* Manage different type of carriage return: CR CR/LF LF
Development
* Command line API for script and testing.
User interface
* Page menu on upper and lower sides: [parent dir] [root dir] [raw text]
* Images
* Text localisation