Paperwork è un gestore di documenti personale gratuito, open source e self-hosted che può essere utilizzato per gestire documenti scansionati e PDF. Sono soluzioni alternative ad altri servizi come Evernote, Microsoft OneNote e Google Keep. Viene fornito con molte funzioni tra cui rilevamento automatico dell'orientamento della pagina, scansione, OCR, etichette dei documenti, ricerca, suggerimenti per parole chiave, modifica rapida delle scansioni e molto altro.
In questo tutorial, spiegheremo come installare Paperwork sul server Ubuntu 18.04.
Requisiti
- Un server che esegue il server Ubuntu 18.04.
- Un utente non root con privilegi sudo.
- Un indirizzo IP statico 192.168.0.235 da configurare sul tuo server.
Installa il server LAMP
Innanzitutto, dovrai installare Apache, MariaDB, PHP e altri pacchetti richiesti sul tuo server. Puoi installarli tutti eseguendo il seguente comando:
sudo apt-get update -y
sudo apt-get install apache2 mariadb-server php7.2 libapache2-mod-php7.2 php7.2-cli php7.2-gd php7.2-mysql php7.2-curl php7.2-xml php7.2-mbstring php-pear php7.2-zip php-dev git wget libmcrypt-dev php7.2-gd unzip -y
Successivamente, dovrai installare Nodejs sul tuo sistema. Per impostazione predefinita, l'ultima versione di Nodejs non è disponibile nel repository predefinito di Ubuntu 18.04. Quindi, dovrai aggiungere il repository Nodejs al tuo sistema. Puoi farlo con il seguente comando:
curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
Quindi, installa Nodejs usando il seguente comando:
sudo apt-get install nodejs -y
Successivamente, dovrai installare l'estensione PHP mcrypt sul tuo sistema. Puoi installarlo con il comando pecl:
sudo pecl channel-update pecl.php.net
sudo pecl install mcrypt-1.0.1
Quando richiesto, premi semplicemente invio per continuare.
Successivamente, aggiungi l'estensione mcrypt.so al file php.ini con il seguente comando:
sudo sed -i.bak '927iextension=mcrypt.so' /etc/php/7.2/cli/php.ini
Quindi, prendi il percorso di installazione e aggiungi alla configurazione cli e apache2 php.ini.
sudo bash -c "echo extension=/usr/lib/php/20170718/mcrypt.so > /etc/php/7.2/cli/conf.d/mcrypt.ini"
sudo bash -c "echo extension=/usr/lib/php/20170718/mcrypt.so > /etc/php/7.2/apache2/conf.d/mcrypt.ini"
Successivamente, verifica l'estensione PHP mcrypt con il seguente comando:
sudo php -i | grep "mcrypt"
Uscita:
mcrypt mcrypt support => enabled mcrypt_filter support => enabled mcrypt.algorithms_dir => no value => no value mcrypt.modes_dir => no value => no value
ss
Quindi, riavvia il servizio Apache e MariaDB e abilita l'avvio all'avvio con il seguente comando:
sudo systemctl restart apache2
sudo systemctl restart mariadb
sudo systemctl enable apache2
sudo systemctl enable mariadb
Configura database
Per impostazione predefinita, MariaDB non è protetta. Quindi dovrai prima proteggerlo. Puoi proteggerlo eseguendo il seguente script:
sudo mysql_secure_installation
Rispondi a tutte le domande come mostrato di seguito:
Enter current password for root (enter for none): Set root password? [Y/n]: N Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y
Una volta che MariaDB è protetto, accedi alla shell di MariaDB:
mysql -u root -p
Inserisci la tua password di root, quindi crea un database e un utente per Paperwork:
MariaDB [(none)]> CREATE DATABASE paperwork DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
MariaDB [(none)]>GRANT ALL PRIVILEGES ON paperwork.* TO 'paperwork'@'localhost' IDENTIFIED BY 'paperwork' WITH GRANT OPTION;
Quindi, svuota i privilegi con il seguente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
Quindi, esci dalla console MariaDB con il seguente comando:
MariaDB [(none)]> EXIT
Scarica e installa documenti
Innanzitutto, scarica l'ultima versione di Paperwork eseguendo il comando seguente:
cd /var/www/html
git clone -b 1 https://github.com/twostairs/paperwork.git
Quindi, indica a PHP di ignorare il messaggio "mcrypt_get_iv_size è stato deprecato" eseguendo il comando seguente:
cd paperwork/frontend/
sudo sed -i.bak '3ierror_reporting(E_ALL ^ E_DEPRECATED);' app/config/app.php
Successivamente, dovrai installare Composer sul tuo sistema. Composer è un gestore di dipendenze per PHP che può essere utilizzato per installare le dipendenze richieste da PHP. Puoi installare Composer con il seguente comando:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
Quindi, installa le dipendenze PHP tramite il compositore con il seguente comando:
sudo composer install
Quindi, popolare il database con il seguente comando:
sudo php artisan migrate
Uscita:
PHP Warning: Module 'mcrypt' already loaded in Unknown on line 0 ************************************** * Application In Production! * ************************************** Do you really wish to run this command? y Migration table created successfully. Migrated: 2014_07_22_194050_initialize Migrated: 2014_07_24_103915_create_password_reminders_table Migrated: 2014_10_08_203732_add_visibility_to_tags_table Migrated: 2015_01_21_034728_add_admin_to_users Migrated: 2015_05_05_094021_modify_tag_user_relation Migrated: 2015_05_22_220540_add_version_user_relation Migrated: 2015_06_15_224221_add_tag_parent Migrated: 2015_06_30_125536_add_sessions_table Migrated: 2015_07_29_130508_alter_versions Migrated: 2016_10_21_224100_fix_timestamps_for_postgres_again
Quindi, installa le dipendenze npm e bower:
sudo npm install -g gulp bower
sudo npm install
Dovresti ricevere alcuni messaggi di avviso dopo aver eseguito il comando precedente. Ignorali tutti ed esegui il seguente comando:
sudo bower install --allow-root
sudo gulp
Quindi, dai le autorizzazioni appropriate alla directory dei documenti:
sudo chown www-data:www-data -R /var/www/html/paperwork
sudo chmod -R 755 /var/www/html/paperwork
Configura Apache per le pratiche burocratiche
Successivamente, dovrai creare un host virtuale Apache per le pratiche burocratiche:
Puoi farlo con il seguente comando:
sudo nano /etc/apache2/sites-available/paperwork.conf
Aggiungi le seguenti righe:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/paperwork/frontend/public ServerName example.com <Directory /var/www/html/paperwork/frontend/public> Options Indexes FollowSymlinks AllowOverride All Require all granted </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Salva e chiudi il file. Quindi, abilita l'host virtuale Apache con il seguente comando:
sudo a2ensite paperwork
Infine, abilita il modulo di riscrittura di Apache e riavvia il servizio Apache per applicare tutte le modifiche:
sudo a2enmod rewrite
sudo systemctl restart apache2
Accedi all'interfaccia Web di Paperwork
Paperwork è ora installato e configurato, è ora di accedervi tramite un browser web.
Apri il tuo browser web e digita l'URL http://example.com. Verrai reindirizzato alla pagina di benvenuto di Paperwork:
Fare clic su Avanti pulsante per continuare. Dovresti vedere la seguente pagina:
Assicurati che tutte le dipendenze richieste siano state installate. Quindi, fai clic su Avanti pulsante, dovresti vedere la seguente pagina:
Qui, fornisci i dettagli del tuo database come nome del database, nome utente, password e porta. Quindi, fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Qui, personalizza i documenti in base alle tue esigenze. Quindi, fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Qui, fornisci i dettagli dell'utente amministratore. Quindi, fai clic su Registra e termina l'installazione pulsante. dovresti vedere la seguente pagina:
Ora, fai clic su Vai a Documenti pulsante. Verrai reindirizzato alla pagina di accesso di Paperwork come mostrato di seguito:
Qui, fornisci il tuo indirizzo e-mail e password di amministratore. Quindi fai clic su Accedi pulsante. Dovresti vedere la dashboard di Paperwork nella pagina seguente:
Link
- https://github.com/twostairs/paperwork