From 5601b4536cea2a4c5ebdd39251cc16ec92c01b1d Mon Sep 17 00:00:00 2001 From: matteocoder Date: Tue, 14 Feb 2017 16:36:40 +0100 Subject: Italian documentation added There are some missing links in various articles. Please let me know how I can fix this :) --- docs/ita/user/installation.rst | 333 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 333 insertions(+) create mode 100644 docs/ita/user/installation.rst (limited to 'docs/ita/user/installation.rst') diff --git a/docs/ita/user/installation.rst b/docs/ita/user/installation.rst new file mode 100644 index 00000000..cd6ebbef --- /dev/null +++ b/docs/ita/user/installation.rst @@ -0,0 +1,333 @@ + + +Installa wallabag +================= + +Requisiti +--------- +wallabag é compatibile con PHP >= 5.5, incluso PHP 7. + +.. nota:: + + Per installare facilmente wallabag vi forniamo un Makefile, dunque avrete bisogno dello strumento make. + +wallabag utilizza un gran numero di librerie PHP per funzionare. Queste librerie vanno installate tramite uno strumento chiamato Composer. Dovete installarlo se non lo avete giá fatto e assicuratevi di usare la versione 1.2 ( se giá avete Composer, esegui il comando composer selfupdate). + +Installa Composer: + +:: + curl -s http://getcomposer.org/installer | php + +`Qui `__ puoi trovare istruzioni specifiche. + +Per far funzionare wallabag avrete anche bisogno delle seguenti estensioni. Alcune di queste dovrebbero essere giá attive nella vostra versione di PHP, per cui potrebbe non essere necessario installare tutti i pacchetti corrispondenti. + +- php-session +- php-ctype +- php-dom +- php-hash +- php-simplexml +- php-json +- php-gd +- php-mbstring +- php-xml +- php-tidy +- php-iconv +- php-curl +- php-gettext +- php-tokenizer +- php-bcmath + +wallabag usa PDO per connettersi, per cui avrete bisogno di uno dei seguenti: + +-pdo_mysql +-pdo_sqlite +-pdo_pgsql + +E il corrispondente database server. + +Installazione +------------- + +Su un web server dedicato (raccomandato) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Per installare wallabag stesso dovete eseguire i seguenti comandi: + +:: + + git clone https://github.com/wallabag/wallabag.git + cd wallabag && make install + +Per attivare il server incorporato di PHP e verificare che l’installazione sia andata a buon fine potete eseguire: + +:: + + make run + +E accedere a wallabag all’indirizzo http://ipdeltuoserver:8000 + +.. consiglio:: + + Per definire i parametri con variabili d’ambiente é necessario impostare queste ultime con il prefisso ``SYMFONY_``. Per esempio, ``SYMFONY__DATABASE_DRIVER``. Puoi guardare la `documentazione di Symfony `__ per maggiori informazioni. + +A proposito di hosting condiviso +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Offriamo un pacchetto con tutte le dipendenze incluse. La configurazione di default usa SQLite per il database. Se volete cambiare queste impostazioni, modificate app/config/parameters.yml. + +Abbiamo giá creato un utente: il login e la password sono wallabag. + +.. attenzione: + + Con questo pacchetto, wallabag non controlla le estensioni obbligatorie usate nell’applicazione (questi controlli sono fatti durante ``composer install`` quando hai un server web dedicato, vedi sopra). + +Eseguite questo comando per scaricare ed estrarre il pacchetto piú aggiornato: + +.. code-block:: bash + + wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package + +Troverete il `hash md5 del pacchetto piú aggiornato sul nostro sito `_. + +Ora leggete la seguente documentazione per creare il vostro host virtuale poi accedete al vostro wallabag. Se avete cambiato la configurazione del database per usare MySQL o PostrgreSQL, dovrete creare un utente con il comando php bin/console wallabag:install --env=prod . + +Installazione con Docker +~~~~~~~~~~~~~~~~~~~~~~~~ + +Offriamo un’immagine Docker per installare wallabag facilmente. Guarda la nostra repository su `Docker Hub `__ per maggiori informazioni. + +Comando per avviare il container + +.. code-block:: bash + + docker pull wallabag/wallabag + + +Host virtuali +------------- + +Configurazione su Apache +~~~~~~~~~~~~~~~~~~~~~~~~ + +Assumendo che voi abbiate installato wallabag nella cartella ``/var/www/wallabag`` e che vogliate usare PHP come un modulo Apache, ecco un vhost per l’applicazione: + +:: + + + ServerName domain.tld + ServerAlias www.domain.tld + + DocumentRoot /var/www/wallabag/web + + AllowOverride None + Order Allow,Deny + Allow from All + + + Options -MultiViews + RewriteEngine On + RewriteCond %{REQUEST_FILENAME} !-f + RewriteRule ^(.*)$ app.php [QSA,L] + + + + # uncomment the following lines if you install assets as symlinks + # or run into problems when compiling LESS/Sass/CoffeScript assets + # + # Options FollowSymlinks + # + + # 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 + + + RewriteEngine Off + + + ErrorLog /var/log/apache2/wallabag_error.log + CustomLog /var/log/apache2/wallabag_access.log combined + + +Dopo aver riavviato o ricaricato Apache dovreste essere in grado di accedere a wallabag tramite l’indirizzo http://domain.tld. + +Configurazione su Nginx +~~~~~~~~~~~~~~~~~~~~~~~ + +Assumendo che abbiate installato wallabag nella cartella ``/var/www/wallabag``, ecco una ricetta per l’applicazione: + +:: + + 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; + } + + # return 404 for all other php files not matching the front controller + # this prevents access to other php files you don't want to be accessible. + location ~ \.php$ { + return 404; + } + + error_log /var/log/nginx/wallabag_error.log; + access_log /var/log/nginx/wallabag_access.log; + } + + +Dopo aver riavviato o ricaricato Nginx dovreste essere in grado di accedere a wallabag tramite l’indirizzo http://domain.tld. + +Configurazione su lighttpd +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Assumendo che abbiate installato wallabag nella cartella /var/www/wallabag, ecco una ricetta per l’applicazione (modificate il vostro file lighttpd.conf e incollatevi questa configurazione): + +:: + + server.modules = ( + "mod_fastcgi", + "mod_access", + "mod_alias", + "mod_compress", + "mod_redirect", + "mod_rewrite", + ) + server.document-root = "/var/www/wallabag/web" + server.upload-dirs = ( "/var/cache/lighttpd/uploads" ) + server.errorlog = "/var/log/lighttpd/error.log" + server.pid-file = "/var/run/lighttpd.pid" + server.username = "www-data" + server.groupname = "www-data" + server.port = 80 + server.follow-symlink = "enable" + index-file.names = ( "index.php", "index.html", "index.lighttpd.html") + url.access-deny = ( "~", ".inc" ) + static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" ) + compress.cache-dir = "/var/cache/lighttpd/compress/" + compress.filetype = ( "application/javascript", "text/css", "text/html", "text/plain" ) + include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port + include_shell "/usr/share/lighttpd/create-mime.assign.pl" + include_shell "/usr/share/lighttpd/include-conf-enabled.pl" + dir-listing.activate = "disable" + + url.rewrite-if-not-file = ( + "^/([^?]*)(?:\?(.*))?" => "/app.php?$1&$2", + "^/([^?]*)" => "/app.php?=$1", + ) + + +Diritti di accesso alle cartelle del progetto +--------------------------------------------- + +Ambiente di test +~~~~~~~~~~~~~~~~ + +Quando vorremo solamente testare wallabag, eseguiremo il comando ``make run`` per avviare la nostra istanza di wallabag e tutto funzionerá correttamente poiché l’utente che ha iniziato il progetto puó accedere alla cartella corrente senza problemi. + +Ambiente di produzione +~~~~~~~~~~~~~~~~~~~~~~ + +Non appena useremo Apache o Nginx per accedere alla nostra istanza di wallabag, e non avviandola con il comando ``make run``, dovremo aver cura di concedere i giusti diritti sulle giuste cartelle per far rimanere sicure tutte le cartelle del progetto. + +Per fare ció, il nome della cartella, conosciuta come ``DocumentRoot`` (per Apache) o ``root`` (per Nginx), deve essere assolutamente accessibile all’utente Apache/Nginx. Il suo nome è generalmente ``www-data``, ``apache`` o ``nobody`` (dipendendo dal sistema Linux utilizzato). + +Quindi la cartella ``/var/www/wallabag/web`` deve essere accessibile da quest’ultimo. Questo tuttavia potrebbe non essere sufficiente se solo ci importa di questa cartella poiché potremmo incontrare una pagina bianca o un errore 500 quando cerchiamo di accedere alla homepage del progetto. + +Questo é dato dal fatto che dovremo concedere gli stessi diritti di accesso di ``/var/www/wallabag/web`` alla cartella ``/var/www/wallabag/var`` . Risolveremo quindi il problema con il seguente comando: + +.. code-block:: bash + + chown -R www-data:www-data /var/www/wallabag/var + + +Deve essere tutto uguale per le seguenti cartelle: + +* /var/www/wallabag/bin/ +* /var/www/wallabag/app/config/ +* /var/www/wallabag/vendor/ +* /var/www/wallabag/data/ + +inserendo + +.. code-block:: bash + + chown -R www-data:www-data /var/www/wallabag/bin + chown -R www-data:www-data /var/www/wallabag/app/config + chown -R www-data:www-data /var/www/wallabag/vendor + chown -R www-data:www-data /var/www/wallabag/data/ + +Altrimenti prima o poi incontreremo questi messaggi di errore: + +.. code-block:: bash + + Unable to write to the "bin" directory. + file_put_contents(app/config/parameters.yml): failed to open stream: Permission denied + file_put_contents(/.../wallabag/vendor/autoload.php): failed to open stream: Permission denied + +Regole aggiuntive per SELinux +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +se SELinux é abilitato sul vostro sistema, dovrete configurare contesti aggiuntivi in modo che wallabag funzioni correttamente. Per controllare se SELinux é abilitato, semplicemente inserisci ció che segue: + +``getenforce`` + +Questo mostrerá ``Enforcing`` se SELinux é abilitato. Creare un nuovo contesto coinvolge la seguente sintassi: + +``semanage fcontext -a -t `` + +Per esempio: + +``semanage fcontext -a -t httpd_sys_content_t "/var/www/wallabag(/.*)?"`` + +Questo applicherá ricorsivamente il constesto httpd_sys_content_t alla cartella wallabag e a tutti i file e cartelle sottostanti. Sono necessarie le seguenti regole: + ++-----------------------------------+----------------------------+ +| Percorso completo | Contesto | ++===================================+============================+ +| /var/www/wallabag(/.*)? | ``httpd_sys_content_t`` | ++-----------------------------------+----------------------------+ +| /var/www/wallabag/data(/.*)? | ``httpd_sys_rw_content_t`` | ++-----------------------------------+----------------------------+ +| /var/www/wallabag/var/logs(/.*)? | ``httpd_log_t`` | ++-----------------------------------+----------------------------+ +| /var/www/wallabag/var/cache(/.*)? | ``httpd_cache_t`` | ++-----------------------------------+----------------------------+ + +Dopo aver creato questi contesti, inserite ció che segue per applicare le vostre regole: + +``restorecon -R -v /var/www/wallabag`` + +Potrete controllare i contesti in una cartella scrivendo ``ls -lZ`` e potrete vedere tutte le regole correnti con ``semanage fcontext -l -C``. + +Se state installando il pacchetto latest-v2-package, é necessaria un'ulteriore regola durante la configurazione iniziale: + +``semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/wallabag/var"`` + +Dopo che siate acceduti con successo al vostro wallabag e abbiate completato la configurazione iniziale, questo contesto puó essere rimosso: + +:: + + semanage fcontext -d -t httpd_sys_rw_content_t "/var/www/wallabag/var" + retorecon -R -v /var/www/wallabag/var -- cgit v1.2.3