- Don't hijack the entire SSL site for sake of Plinth.
- Serve both HTTP and HTTPS sites with default configuration.
- plinth-ssl configuration only make SSL compulsory.
- Document modules required for configuration to work properly.
- Don't disable default site during FreedomBox setup run. This is no
longer required.
- Request Apache to send X-Forwarded-Proto header.
- Use X-Forwarded-Proto header to understand original protocol
requested.
- Use X-Forwarded-Host header to understand original host requested.
- Allow any incoming host header so that FreedomBox can have any
hostname and when user requests for Plint with that hostname, it
works.
- Don't depend on Apache to rewrite the Location: header. Instead use
the original host and original scheme to set proper Location: header.
When Apache proxy forwards a request it usually makes the request to the
backend server with a new Host: header but sends the original host
information using a special header X-FORWARDED-HOST: header. It is a
common practise. The backend can be make the choice of which header to
use based on the knowledge that it is running behind a proxy server.
Since hostname of a FreedomBox machine could be anyting and it could
change during the operation of Plinth, having a list of incoming Host:
header values is not going to be easy in Plinth. If Apache were not to
force override this header, managing list of Host: header values will
become easiler in Plinth. If Plinth indeed wants to know the original
host name by which user refferred to it, it can use the
X-FORWARDED-HOST: header which is the norm in these situtations.
We are allowing modules to bring their own static content. If we need
to configure Apache to serve static URLs directly, Apache will have know
all the static URLs generated by all the modules. If these details are
provided, it will likely effect our modularity.
The current static URL given in Apache configuration is anyway
incorrect.
The package license (AGPL3+) implicitly indicates the license of each
file. However, it is desirable to have license headers in each file.
This is the case for many prominent projects like GNU project, Mozilla
etc.
More authors have contributed in a significant manner given them
copyright for thier contributions. Hence changed Plinth copyright to
'Plinth Authors'. Full list of authors can be obtained from the Git
revision log.
- There is no point in keeping this one single file as with different
license from the rest of the package. This change simplifies things.
- The file has been almost entirely been rewritten for Django, module
loading, CherryPy static directories etc.
- This change will be pushed with the consent of new authors: fonfon and
Me.
Setup.py list will need python modules list and doesn't understand
Debian packages. Setup.py will try to install libjs-boostrap as a
Python module and download it from PyPI.
When we configure a Tor hidden service and haven't yet run Tor at least
once, then Tor hidden service hostname and private key are not
available. This situation requires running Tor atleast once and is not
a configuration error. When Tor runs, it see the hidden service
configuration and creates the Hidden service information.