forked from wallabag/wallabag
improve installation documentation
This commit is contained in:
@ -4,20 +4,142 @@ Install wallabag
|
||||
Requirements
|
||||
------------
|
||||
|
||||
wallabag is compatible with php >= 5.5
|
||||
|
||||
You'll need the following extensions for wallabag to work. Some of these may already activated in your version of php, so you may not have to install all corresponding packages.
|
||||
|
||||
- php-session
|
||||
- php-ctype
|
||||
- php-dom
|
||||
- pĥp-hash
|
||||
- php-simplexml
|
||||
- php-json
|
||||
- php-gd
|
||||
- php-mbstring
|
||||
- php-xml
|
||||
- php-tidy
|
||||
- php-iconv
|
||||
- php-curl
|
||||
- php-gettext
|
||||
- php-tokenizer
|
||||
|
||||
wallabag uses PDO to connect to database, so you'll need one of:
|
||||
|
||||
- php-pdo_mysql
|
||||
- php-pdo_sqlite
|
||||
- php-pdo_pgsql
|
||||
|
||||
and it's corresponding database server.
|
||||
|
||||
Installation
|
||||
------------
|
||||
|
||||
wallabag uses a big number of libraries in order to function. These libraries must be installed with a tool called Composer. You need to install it if you don't already have.
|
||||
|
||||
Install Composer:
|
||||
|
||||
::
|
||||
|
||||
curl -s http://getcomposer.org/installer | php
|
||||
|
||||
Next, on your web server, run this command:
|
||||
You can find specific instructions here : __ https://getcomposer.org/doc/00-intro.md
|
||||
|
||||
To install wallabag itself, you must run these two commands:
|
||||
|
||||
::
|
||||
|
||||
SYMFONY_ENV=prod composer create-project wallabag/wallabag wallabag "2.0.*@alpha" --no-dev
|
||||
php bin/console wallabag:install --env=prod
|
||||
|
||||
Now you can access to http://yourwebsite/wallabag.
|
||||
To start php's build-in server and test if everything did install correctly, you can do:
|
||||
|
||||
::
|
||||
|
||||
php bin/console server:run --env=prod
|
||||
|
||||
And access wallabag at http://yourserverip:8000
|
||||
|
||||
Installing on Apache
|
||||
--------------------
|
||||
|
||||
Assuming you install wallabag in the /var/www/wallabag folder and that you want to use php as an Apache module, here's a vhost for wallabag:
|
||||
|
||||
::
|
||||
|
||||
<VirtualHost *:80>
|
||||
ServerName domain.tld
|
||||
ServerAlias www.domain.tld
|
||||
|
||||
DocumentRoot /var/www/wallabag/web
|
||||
<Directory /var/www/wallabag/web>
|
||||
AllowOverride None
|
||||
Order Allow,Deny
|
||||
Allow from All
|
||||
|
||||
<IfModule mod_rewrite.c>
|
||||
Options -MultiViews
|
||||
RewriteEngine On
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteRule ^(.*)$ app.php [QSA,L]
|
||||
</IfModule>
|
||||
</Directory>
|
||||
|
||||
# uncomment the following lines if you install assets as symlinks
|
||||
# or run into problems when compiling LESS/Sass/CoffeScript assets
|
||||
# <Directory /var/www/wallabag>
|
||||
# Options FollowSymlinks
|
||||
# </Directory>
|
||||
|
||||
# optionally disable the RewriteEngine for the asset directories
|
||||
# which will allow apache to simply reply with a 404 when files are
|
||||
# not found instead of passing the request into the full symfony stack
|
||||
<Directory /var/www/wallabag/web/bundles>
|
||||
<IfModule mod_rewrite.c>
|
||||
RewriteEngine Off
|
||||
</IfModule>
|
||||
</Directory>
|
||||
ErrorLog /var/log/apache2/wallabag_error.log
|
||||
CustomLog /var/log/apache2/wallabag_access.log combined
|
||||
</VirtualHost>
|
||||
|
||||
After reloading or restarting Apache, you should now be able to access wallabag at http://domain.tld.
|
||||
|
||||
Installing on Nginx
|
||||
-------------------
|
||||
|
||||
Assuming you install wallabag in the /var/www/wallabag folder, , here's the recipe for wallabag :
|
||||
|
||||
::
|
||||
|
||||
server {
|
||||
server_name domain.tld www.domain.tld;
|
||||
root /var/www/wallabag/web;
|
||||
|
||||
location / {
|
||||
# try to serve file directly, fallback to app.php
|
||||
try_files $uri /app.php$is_args$args;
|
||||
}
|
||||
location ~ ^/app\.php(/|$) {
|
||||
fastcgi_pass unix:/var/run/php5-fpm.sock;
|
||||
fastcgi_split_path_info ^(.+\.php)(/.*)$;
|
||||
include fastcgi_params;
|
||||
# When you are using symlinks to link the document root to the
|
||||
# current version of your application, you should pass the real
|
||||
# application path instead of the path to the symlink to PHP
|
||||
# FPM.
|
||||
# Otherwise, PHP's OPcache may not properly detect changes to
|
||||
# your PHP files (see https://github.com/zendtech/ZendOptimizerPlus/issues/126
|
||||
# for more information).
|
||||
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
|
||||
fastcgi_param DOCUMENT_ROOT $realpath_root;
|
||||
# Prevents URIs that include the front controller. This will 404:
|
||||
# http://domain.tld/app.php/some-path
|
||||
# Remove the internal directive to allow URIs like this
|
||||
internal;
|
||||
}
|
||||
|
||||
error_log /var/log/nginx/wallabag_error.log;
|
||||
access_log /var/log/nginx/wallabag_access.log;
|
||||
}
|
||||
|
||||
After reloading or restarting nginx, you should now be able to access wallabag at http://domain.tld.
|
||||
|
||||
Reference in New Issue
Block a user