Commit graph

55 commits

Author SHA1 Message Date
nodiscc add670b8ab
doc: fix mkdocs build warnings/relative links
INFO    -  Cleaning site directory
INFO    -  Building documentation to directory: /home/live/GIT/Shaarli/doc/html
INFO    -  Doc file 'index.md' contains an unrecognized relative link 'Usage#tag-cloud', it was left
           as is. Did you mean 'Usage.md#tag-cloud'?
INFO    -  Doc file 'index.md' contains an unrecognized relative link 'Usage#picture-wall', it was
           left as is. Did you mean 'Usage.md#picture-wall'?
INFO    -  Doc file 'index.md' contains an unrecognized relative link 'Usage#import-export', it was
           left as is. Did you mean 'Usage.md#import-export'?
INFO    -  Doc file 'Community-and-related-software.md' contains an unrecognized relative link
           'REST-API', it was left as is. Did you mean 'REST-API.md'?
INFO    -  Doc file 'Community-and-related-software.md' contains an unrecognized relative link
           'Theming', it was left as is.
INFO    -  Doc file 'Installation.md' contains an unrecognized relative link
           'dev/Development#third-party-libraries', it was left as is. Did you mean
           'dev/Development.md#third-party-libraries'?
INFO    -  Doc file 'Installation.md' contains an unrecognized relative link
           'Upgrade-and-migration', it was left as is. Did you mean 'Upgrade-and-migration.md'?
INFO    -  Doc file 'Plugins.md' contains an unrecognized relative link 'Shaarli-configuration', it
           was left as is. Did you mean 'Shaarli-configuration.md'?
INFO    -  Doc file 'REST-API.md' contains an unrecognized relative link 'Server-configuration', it
           was left as is. Did you mean 'Server-configuration.md'?
INFO    -  Doc file 'Reverse-proxy.md' contains an unrecognized relative link
           'Shaarli-configuration', it was left as is. Did you mean 'Shaarli-configuration.md'?
INFO    -  Doc file 'Server-configuration.md' contains an unrecognized relative link
           'Directory-structure', it was left as is.
INFO    -  Doc file 'Shaarli-configuration.md' contains an unrecognized relative link
           'Translations', it was left as is.
INFO    -  Doc file 'dev/Development.md' contains an unrecognized relative link 'Unit-tests', it was
           left as is. Did you mean 'Unit-tests.md'?
INFO    -  Doc file 'dev/Development.md' contains an unrecognized relative link 'GnuPG-signature',
           it was left as is. Did you mean 'GnuPG-signature.md'?
INFO    -  Doc file 'dev/GnuPG-signature.md' contains an unrecognized relative link 'Release
           Shaarli', it was left as is.
INFO    -  Doc file 'dev/Theming.md' contains an unrecognized relative link 'Shaarli-configuration',
           it was left as is.
INFO    -  Doc file 'dev/Translations.md' contains an unrecognized relative link 'Theming', it was
           left as is. Did you mean 'Theming.md'?
INFO    -  Documentation built in 0.40 seconds
2023-08-20 23:13:59 +02:00
Gregory 5f69e17310
Update Server-configuration.md (#1973) 2023-04-15 09:02:48 -04:00
ArthurHoaro 050bb50cdf
Update compatibility matrix 2023-03-25 09:42:42 -04:00
Denis Renning 4c76d4eea9
Github actions: update node (#1928)
* update Node dependent actions
* doc: update compatibility table

Co-authored-by: William Desportes <williamdes@wdes.fr>
Co-authored-by: nodiscc <nodiscc@gmail.com>
2023-03-17 01:22:20 +00:00
ArthurHoaro dc08e17996 doc(apache2): allow access to local docs folder 2022-08-20 10:46:53 +02:00
nodiscc a79707258f
Merge pull request #1768 from nodiscc/doc-proxy-subdirectory
doc: add notice about nginx location directive when shaarli is installed in a subdirectory
2021-07-19 17:02:29 +00:00
nodiscc 4a63c2bbb4
doc: LDAP login support, update php requirements list
- fixes https://github.com/shaarli/Shaarli/issues/1677
2021-06-17 17:57:07 +02:00
nodiscc f841121a6e
doc: add notice about nginx location directive when shaarli is installed in a subdirectory
- fixes https://github.com/shaarli/Shaarli/issues/1679
2021-06-17 17:50:56 +02:00
ArthurHoaro ba4fa9460a Documentation: include all PHP extensions installed in our official Docker image
Fixes #1700
2021-04-05 11:27:45 +02:00
nodiscc 3bb6205e7f
doc: apache: explicitely ste index.php as DirectoryIndex
WIthout this directive apache will try other default/global DirectoryIndex files resulting in useless file access/error messages in logs

```
[Sun Mar 07 14:04:25.383960 2021] [authz_core:error] [pid 946:tid 139985284290304] [client 10.0.0.1:42616] AH01630: client denied by server configuration: /var/www/links.example.org/index.html
[Sun Mar 07 14:04:25.384293 2021] [authz_core:error] [pid 946:tid 139985284290304] [client 10.0.0.1:42616] AH01630: client denied by server configuration: /var/www/links.example.org/index.cgi
[Sun Mar 07 14:04:25.384465 2021] [authz_core:error] [pid 946:tid 139985284290304] [client 10.0.0.1:42616] AH01630: client denied by server configuration: /var/www/links.example.org/index.pl
```
2021-03-07 13:08:31 +00:00
ArthurHoaro 7e78237fc9
Merge pull request #1630 from ArthurHoaro/fix/apache-config
Reviewed Apache configuration
2020-11-10 10:45:05 +01:00
ArthurHoaro 8a9796014c Reviewed Apache configuration
(in documentation)

For security purpose, block access to any static file not matching the list of allowed extensions.
It allows us to remove the specific retriction on dotfiles, and fix Apache part of #1608.
2020-11-08 13:13:13 +01:00
ArthurHoaro ce901a5828 Reviewed nginx configuration
Both in documentation and Docker image.

For security purpose, it no longer allow to access static files through
the main nginx *location*. Static files are served if their extension
matches the whitelist.

As a side effect, we no longer need specific restrictions, and
therefore it fixes the nginx part of #1608.
2020-11-07 14:27:49 +01:00
ArthurHoaro 2f87bfdc69 Fix: nginx - add rule to disable url-rewriting for the docs
Related to #1603
2020-10-21 15:23:30 +02:00
ArthurHoaro 7836ed9b2e Doc: typo 2020-10-16 19:20:45 +02:00
ArthurHoaro 7f5250421b Support using Shaarli without URL rewriting
- Shaarli can be fully used by prefixing any URL with /index.php/
   - {$base_path} used in templates already works with this configuration
   - Assets path (outside of theme's assets) must be prefixed with {$root_url}/
   - Documentation section in « Server configuration »

Fixes #1590
2020-10-16 12:47:11 +02:00
ArthurHoaro ec45749187 Doc: add PHP 7.4 and 8.0 as supported version 2020-10-15 09:01:41 +02:00
nodiscc a5e9f2d6c9 doc: nginx config: document ipv4 and ipv6 listen directives 2020-09-12 14:31:45 +02:00
nodiscc f682f1b899 doc: serve configuration/reverse proxy: fix apache mod_md configuration, move reference links to their respective sections, shorten 2020-09-12 14:31:45 +02:00
nodiscc 083b28021a doc: server configuration: fix apache restart command 2020-09-12 14:31:45 +02:00
nodiscc 19489e92d7 doc: server configuration: enable mod_headers 2020-09-12 14:31:45 +02:00
nodiscc 5eece37b0a doc: server configuration: fix apache site config file name 2020-09-12 14:31:45 +02:00
nodiscc d8847936d4 doc: server configuration: add reminder to change the example domain name 2020-09-12 14:31:45 +02:00
nodiscc 9417f1337e doc: server configuration: add asciicast of server configuration procedure (asciinema) 2020-09-12 14:31:45 +02:00
nodiscc 02117f7ea3 doc: reverse proxy: update HTTP->HTTPS redirect configuration, remove logging options 2020-09-12 14:31:45 +02:00
nodiscc e21df1e729 doc: fail2Ban: add note about restarting fail2ban 2020-09-12 14:31:45 +02:00
nodiscc f3ab261631 doc: apache: add example configuration for mod_md 2020-09-12 14:31:45 +02:00
nodiscc 38d66e1a40 doc: server configuration: apache: add note about mod_md 2020-09-12 14:31:45 +02:00
nodiscc ecdae2237f doc: server configuration: update apache configuration 2.2 -> 2.4
https://httpd.apache.org/docs/current/upgrading.html
2020-09-12 14:31:45 +02:00
nodiscc 78f319fa6b doc: troubleshooting: add procedure to clear shaarli caches 2020-09-12 14:31:45 +02:00
nodiscc 6c4cae378e doc: server configuration: remove apache logging options
see https://github.com/nodiscc/xsrv/blob/master/roles/apache/templates/etc_apache2_conf-available_logging.conf.j2 for an example server-wide logging configuration
2020-09-12 14:31:45 +02:00
nodiscc 1aeefe1088 doc: server configuration: formatting/add comment 2020-09-12 14:31:45 +02:00
nodiscc e0fe33f90b doc: server configuration: add note on required firewall/NAT for Let's Encrypt certificates 2020-09-12 14:31:45 +02:00
nodiscc dfe14f264b doc: server configuration: php requirements: add php-simplexml
ref. https://github.com/shaarli/Shaarli/pull/1476
2020-09-12 14:31:45 +02:00
nodiscc 778add2c9c doc: nginx: add let's encrypt ssl configuration 2020-09-12 14:31:45 +02:00
nodiscc 538fb324a8 doc: nginx: reorder 2020-09-12 14:31:45 +02:00
nodiscc c84d143047 apache: fix let's encrypt configuration , copy it directly from reference file
including options-ssl-apache.conf requires python3-certbot-apache which pulls a lot of dependencies
2020-09-12 14:31:45 +02:00
nodiscc 30255b794a doc: php compatibility: add php 7.3 2020-09-12 14:31:45 +02:00
nodiscc 41b93897f3 server-configuration: move firewall/NAT requirements to Network section 2020-09-12 14:31:45 +02:00
nodiscc 6384447d1d fix markdown syntax 2020-09-12 14:31:45 +02:00
nodiscc a32e6665d0 formatting/emphasis 2020-09-12 14:31:45 +02:00
nodiscc 91a21c2729 **General rewording, proof-reading, deduplication, shortening, reordering, simplification, cleanup/formatting/standardization**
- standardize page names, rework documentation structure, update TOC
- use same example paths everywhere
- level 1 titles on all pages
- fix broken links
- .md suffix on all page links (works both from readthedocs and github repository views)

**Server:**

A full and concise installation guide with examples is a frequent request. The documentation should provide such a guide for basic installation needs, while explaining alternative/advanced configuration at the end. Links to reference guides and documentation should be used more frequently to avoid recommending an outdated or excessively complex configuration.

- server: move most server-related info to server-configuration.md, cleanup/shorten
- server: update list of php dependencies/libraries, link to composer.json
- server: installation: support 3 install methods (from release zip, from sources, using docker)
- server: installation: use rsync instead of mv as mv results will change depending of taget directory already existing or not
- server: add example/basic usage of certbot
- server, upgrade, installation: update file permissions setup, use sudo for upgrade operations in webserver document root
- server: apache: add comments to configuration, fix and factorize file permissions setup, set cache-control header, deny access to dotfiles, add missing apache config steps, add http->https redirect example
- server: nginx: refactor nginx configuration, add comments, DO log access to denied/protected files
- server: add links to MDN for x-forwarded-* http headers explanation, cleanup/clarify robots.txt and crawlers section
- server: bump file upload size limit to 100MB we have reports of bookmark exports weighing +40MB - i have a 13MB one here
- server: simplify phpinfo documentation
- server: move backup and restore information to dedicated page
- docker: move all docker docs to Docker.md, simplify/ docker setup, add docker-compose.yml example, replace docker-101 with docker cheatsheet
- troubleshooting: move all troubleshooting documentation to troubleshooting.md

**Usage:**

- index: add getting started section on index page
- features/usage: move all usage-related documentation to usage.md, add links from the main feature list to corresponding usage docs, clarify/reword features list
- shaarli configuration: add note about configuring from web interface

**Removed:**

- remove obsolete/orphan images
- remove obsolete shaarchiver example
- remove outdated "decode datastore content" snippet

**Development:**

- development: move development-related docs (static analysis, CI, unit tests, 3rd party libs, link structure/directory, guidelines, security....) to dev/ directory
- development: Merge several pages to development.md
- **Breaking change?:** remove mentions of 'stable' branch, switch to new branch/release model (master=latest commit, release=latest tag)
- **Breaking change?:** refer to base sharing unit as "Shaare" everywhere (TODO: reflect changes in the code?) doc: update featues list/link to usage.md for details
- development: directory structure: add note about required file permissions
- .travis-ci.yml: add comments
- .htaccess: add comment
2020-09-12 14:31:45 +02:00
nodiscc 273453900a
doc: use obvious <PHP_VERSION> placeholder
Co-Authored-By: Aurélien Tamisier <virtualtam+github@flibidi.net>
2020-03-09 17:43:45 +00:00
nodiscc 04a816f648 doc: fix references to php5, use new directory structure 2020-01-19 13:52:03 +01:00
nodiscc 3575fe5bcf
doc: add explanation of php-json requirement 2019-11-09 15:40:53 +00:00
rfolo9li 54b065c253
Added php-json as required PHP module
Without php-json the installation stops with a white screen and the following error:
> 09-Nov-2019 14:05:46 UTC] PHP Fatal error:  Uncaught Error: Call to undefined function Shaarli\Config\json_encode() in /var/www/html/shaarli/application/config/ConfigJson.php:48
> Stack trace:
> #0 /var/www/html/shaarli/application/config/ConfigManager.php(239): Shaarli\Config\ConfigJson->write('data/config.jso...', Array)
> #1 /var/www/html/shaarli/index.php(1835): Shaarli\Config\ConfigManager->write(false)
> #2 /var/www/html/shaarli/index.php(178): install(Object(Shaarli\Config\ConfigManager), Object(Shaarli\Security\SessionManager), Object(Shaarli\Security\LoginManager))
> #3 {main}
>   thrown in /var/www/html/shaarli/application/config/ConfigJson.php on line 48

Tested with Shaarli 0.10.4 on CentOS 8 with Httpd 2.4.37 and PHP 7.2.11.
2019-11-09 15:24:10 +01:00
ArthurHoaro c3a04e328f
Merge pull request #1273 from ArthurHoaro/feature/ban-manager
Rewrite IP ban management
2019-05-25 16:13:56 +02:00
ArthurHoaro 899d041137 Documentation: drop PHP 7.0 compatibility in Shaarli 11.x
related to #1249
2019-02-09 17:02:30 +01:00
ArthurHoaro b49a04f796 Rewrite IP ban management
This adds a dedicated manager class to handle all ban interactions, which is instantiated and handled by LoginManager.
IPs are now stored in the same format as the datastore, through FileUtils.

Fixes #1032 #587
2019-02-09 16:44:48 +01:00
nodiscc 7062ef4ddd
doc: update PHP compatibility table
Ref https://github.com/shaarli/Shaarli/issues/1249
2018-12-09 14:40:04 +00:00