Commit graph

346 commits

Author SHA1 Message Date
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
1a36e314ba
Merge pull request #1769 from nodiscc/doc-php-ldap
doc: LDAP login support, update php requirements list
2021-07-19 17:02:14 +00:00
nodiscc
4cfaa67e07
Merge pull request #1767 from nodiscc/doc-bookmarklet
doc: bookmarklet is now working on github.com
2021-07-19 17:02:05 +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
nodiscc
2a569f1e93
doc: bookmarklet is now working on github.com
- left generic paragraph about this problem in place, since the problem may still be present on other sites
- closes https://github.com/shaarli/Shaarli/issues/1730
2021-06-17 17:46:00 +02:00
nodiscc
eeaabc05a7
build and push docker images using github actions
- push images to https://hub.docker.com/r/shaarli/shaarli/tags using a personal access token (access tokens are not available for organizations)
- push an image tagged :latest for builds on master
- push an image with the same tag as the git tag for v*.*.* tags, and for the "release" branch
- update documentation (remove references to Travis/Drone CI
- deprecate stable and master Docker tags (ref. https://github.com/shaarli/Shaarli/issues/1453)
- add deprecation notices to CHANGELOG.md
2021-06-15 20:35:36 +02:00
nodiscc
d4da270289
doc: update CI documentation
- use cloud.drone.io badges for builds on the master branch
- stable/0.x badges will need to be updated when the next stable/0.x release is published
2021-05-13 14:28:25 +02:00
ArthurHoaro
e660450a2b Fix documentation build
- pages parameters has been deprecated and renamed by nav
  - the build fails with an empty extra_css array
2021-05-13 11:36:37 +02:00
Alexander Railean
060e6d9498 Correct HTTP status code 206->406 2021-04-12 21:05:21 +02:00
Alexander Railean
e00b9dc099 Add '206 not acceptable' to the Troubleshooting section 2021-04-12 21:03:43 +02:00
nodiscc
9700d9ea3e
doc: plugins.md: fix link casing
fixes https://github.com/shaarli/Shaarli/issues/1737
2021-04-12 18:15:58 +00:00
nodiscc
9f87e82cdb
Merge pull request #1734 from ArthurHoaro/doc/php-extensions
Documentation: include all PHP extensions installed in our official Docker image
2021-04-05 10:52:37 +00:00
ArthurHoaro
5bf3deb815
Merge pull request #1733 from ArthurHoaro/feature/phpcs-tests 2021-04-05 11:34:03 +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
ArthurHoaro
44b0825860 Coding style: update documentation (static analysis section)
Related to #95
2021-04-05 11:08:02 +02:00
nodiscc
8b8ed23ae1
Merge pull request #1718 from shaarli/doc-apache-directoryindex
doc: apache: explicitly set index.php as DirectoryIndex
2021-03-27 14:17:40 +00: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
jalr
94dadd85a0
Fix typo 2021-03-07 10:58:15 +00:00
ArthurHoaro
bcba6bd353 New plugin hook: ability to add custom filters to Shaarli search engine
A new plugin hook has been added: hook_test_filter_search_entry
This hook allows to filter out bookmark with custom plugin code when a search is performed.

Related to #143
2021-02-04 11:02:50 +01:00
leyrer
151fa1e450 Typo fix line 76 'Authentication' -> Authorization 2020-12-26 13:45:01 +01:00
ArthurHoaro
bd11879018
Merge pull request #1645 from ArthurHoaro/feature/plugin-register-route
Plugin system: allow plugins to provide custom routes
2020-12-16 16:04:15 +01:00
ArthurHoaro
a6e9c08499 Plugin system: allow plugins to provide custom routes
- each route will be prefixed by `/plugin/<plugin_name>`
  - add a new template for plugins rendering
  - add a live example in the demo_plugin

Check out the "Plugin System" documentation for more detail.

Related to #143
2020-11-15 12:41:43 +01:00
ArthurHoaro
831e974ea5 Doc: fix missing merge on Release page 2020-11-12 13:16:20 +01:00
ArthurHoaro
302662797c
Merge pull request #1635 from ArthurHoaro/feature/phpcs 2020-11-10 10:46:04 +01:00
ArthurHoaro
7e78237fc9
Merge pull request #1630 from ArthurHoaro/fix/apache-config
Reviewed Apache configuration
2020-11-10 10:45:05 +01:00
ArthurHoaro
325cc8adad
Merge pull request #1634 from ArthurHoaro/fix/docker-compose
Docker-compose: fix SSL certificate + add parameter for Docker tag
2020-11-10 10:44:50 +01:00
ArthurHoaro
8affa22431
Merge pull request #1628 from ArthurHoaro/fix/nginx-config
Reviewed nginx configuration
2020-11-10 10:44:29 +01:00
ArthurHoaro
2f4df75304 Update Static Analysis documentation 2020-11-09 12:17:40 +01:00
ArthurHoaro
b7c50a58de Docker-compose: fix SSL certificate + add parameter for Docker tag
Use envvar SHAARLI_VIRTUAL_HOST for Traefik's docker.domain parameter instead of localhost (I'm not sure if did work at some point).

Add an environment variable to choose which Docker tag to use instead of using master by default.

Fixes #1632
2020-11-09 10:36:13 +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
b3bd8c3e8d Feature: support any tag separator
So it allows to have multiple words tags.

Breaking change: commas ',' are no longer a default separator.

Fixes #594
2020-11-05 17:54:42 +01:00
ArthurHoaro
740b32b520 Default formatter: add a setting to disable auto-linkification
+ update documentation
  + single parameter for both URL and hashtags

Fixes #1094
2020-11-03 12:43:35 +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
9b3c1270bc
Merge pull request #1567 from ArthurHoaro/feature/async-title-retrieval 2020-10-20 10:14:28 +02:00
ArthurHoaro
7836ed9b2e Doc: typo 2020-10-16 19:20:45 +02:00
ArthurHoaro
3adbdc2a83 Inject ROOT_PATH in plugin instead of regenerating it everywhere 2020-10-16 13:06:06 +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
4cf3564d28 Add a setting to retrieve bookmark metadata asynchrounously
- There is a new standalone script (metadata.js) which requests
    a new controller to get bookmark metadata and fill the form async
  - This feature is enabled with the new setting: general.enable_async_metadata
    (enabled by default)
  - general.retrieve_description is now enabled by default
  - A small rotating loader animation has a been added to bookmark inputs
    when metadata is being retrieved (default template)
  - Custom JS htmlentities has been removed and  mathiasbynens/he
    library is used instead

Fixes #1563
2020-10-15 09:08:46 +02:00
ArthurHoaro
ec45749187 Doc: add PHP 7.4 and 8.0 as supported version 2020-10-15 09:01:41 +02:00
ArthurHoaro
769a28833b
Merge pull request #1566 from nodiscc/makefile-composer-install
doc/Makefile: remove references to composer update
2020-09-30 11:12:17 +02:00
ArthurHoaro
85b972baf6
Merge pull request #1558 from ArthurHoaro/fix/plugins-base-path
Fix plugin base path in core plugins
2020-09-25 10:59:40 +02:00
nodiscc
0f686afe11 doc/Makefile: remove references to composer update
- add make composer_dependencies_dev Makefile target and use this instead
- fix composer initial installation procedure
- fix php-xdebug install instructions
2020-09-24 21:51:28 +02:00
ArthurHoaro
76fe68d924 Fix plugin base path in core plugins
Also fix note check in archiveorg plugin, and regression on vintage template.
Documentation regarding relative path has been added.

Fixes #1548
2020-09-22 13:50:19 +02:00
ArthurHoaro
650a5f09cb Add manual configuration for root URL
This new setting under 'general.root_url' allows to override automatic discovery of Shaarli instance's URL.

Fixes #1339
2020-09-12 21:39:01 +02:00
ArthurHoaro
97870f3512 doc: Docker minor improvements 2020-09-12 14:31:45 +02:00
Immánuel!
68855686db Add 2 plugins to the 3rd party plugin list
Besides adding 2 new plugins, also reordered the list by ABC and fixed some discrepancies in the details to restore balance in the force
2020-09-12 14:31:45 +02:00
nodiscc
a5e9f2d6c9 doc: nginx config: document ipv4 and ipv6 listen directives 2020-09-12 14:31:45 +02:00
nodiscc
61f0c4b679 doc: apache config: remove useless documentroot directive in HTTP-only virtualhost (only used for redirects) 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
1a19c921a9 doc: updagrde/migration: simplify permissions setup 2020-09-12 14:31:45 +02:00
nodiscc
78b5b44d8f doc: installation: simplify permissions setup 2020-09-12 14:31:45 +02:00
nodiscc
ff2b5f5bd8 doc: docker: update docker-compose to 1.26.2 2020-09-12 14:31:45 +02:00
nodiscc
48b19a7014 doc: installation: bump version to 0.11.1 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
45203c0bca doc: Community-and-related-software.md: order plugins alphabetically 2020-09-12 14:31:45 +02:00
nodiscc
46e019a132 doc: plugins: remove doc about deprecated $GLOBALS['config']['ENABLED_PLUGINS'] array 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
Lucas Cimon
b6c9a2db30 Removing dead link in doc
As it currently redirects to https://www.lgblog.fr
2020-09-12 14:31:45 +02:00
nodiscc
5cacf290f0 doc: document dev.debug configuration etting
ref. https://github.com/shaarli/Shaarli/pull/779
2020-09-12 14:31:45 +02:00
owen bell
56ae25f11f add shaarli-default-dark to the themes list 2020-09-12 14:31:45 +02:00
Lucas Cimon
f5afa87c38 Added links to doc section "Articles and social media discussions" 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
74c2ae4088 doc: Community-and-related-software: add shaarli-webhooks plugin 2020-09-12 14:31:45 +02:00
nodiscc
328c215a8a doc: add note about importing browser bookmarks folder structure to shaarli tags
ref. https://github.com/shaarli/Shaarli/issues/1449
2020-09-12 14:31:45 +02:00
nodiscc
dfed9b2dd5 doc: troubleshooting: improve compatibility with PHP 5.6/FTP upload limits
ref. https://github.com/shaarli/Shaarli/issues/1469
2020-09-12 14:31:45 +02:00
nodiscc
881bd96f15 doc: usage: active filters/clear search filters 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
fe007f94e4 doc: docker.md: fix stray code block 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
ArthurHoaro
80b708a878 Inject BookmarkServiceInterface in plugins data
Related discussion: ilesinge/shaarli-related#7
2020-09-03 15:08:08 +02:00
ArthurHoaro
8e9169ceba Update French translation 2020-07-23 21:19:21 +02:00
ArthurHoaro
1a8ac737e5 Process main page (linklist) through Slim controller
Including a bunch of improvements on the container,
and helper used across new controllers.
2020-07-23 21:19:21 +02:00
ArthurHoaro
1b8620b1ad Process plugins administration page through Slim controllers 2020-07-23 21:19:21 +02:00
ArthurHoaro
78657347c5 Process bookmarks import through Slim controller 2020-07-23 21:19:21 +02:00
ArthurHoaro
c70ff64a61 Process bookmark exports through Slim controllers 2020-07-23 21:19:21 +02:00
ArthurHoaro
9c75f87793 Use multi-level routes for existing controllers instead of 1 level everywhere
Also prefix most admin routes with /admin/
2020-07-23 21:19:21 +02:00
ArthurHoaro
c22fa57a55 Handle shaare creation/edition/deletion through Slim controllers 2020-07-23 21:19:21 +02:00
ArthurHoaro
66063ed1a1 Process configure page through Slim controller 2020-07-23 21:19:21 +02:00
ArthurHoaro
ba43064ddb Process tools page through Slim controller 2020-07-23 21:19:21 +02:00
ArthurHoaro
2899ebb5b5 Initialize admin Slim controllers
- Reorganize visitor controllers
  - Fix redirection with Slim's requests base path
  - Fix daily links
2020-07-23 21:19:21 +02:00