Ricerca nel sito web

Lychee - Un fantastico sistema di gestione delle foto per Linux


Lychee è un sistema di gestione delle foto gratuito, open source, elegante e facile da usare, dotato di tutte le funzionalità necessarie per gestire e condividere in modo sicuro le foto sul tuo server. Ti consente di gestire facilmente (caricare, spostare, rinominare, descrivere, eliminare o cercare) le tue foto in pochi secondi da una semplice applicazione web.

Caratteristiche del litchi

  • Un'interfaccia meravigliosa e straordinaria per gestire tutte le tue foto in un unico posto, direttamente dal tuo browser.
  • Condivisione di foto e album con un clic con protezione tramite password.
  • Visualizza tutte le tue immagini in modalità a schermo intero con la navigazione in avanti e all'indietro utilizzando la tastiera o consenti ad altri di sfogliare le tue foto rendendole pubbliche.
  • Supporta l'importazione di foto da varie fonti: localhost, Dropbox, server remoto o utilizzando un collegamento.

Per installare Lychee, tutto ciò di cui hai bisogno è un server web funzionante come Apache o Nginx con PHP 5.5 o successivo e un MySQL -Database.

Ai fini di questo articolo, installerò un sistema di gestione delle foto Lychee con Nginx, PHP-FPM 7.0 e MariaDB su un VPS RHEL 8 con nome di dominio lychee.example.com.

Passaggio 1: installa Nginx, PHP e MariaDB

1. Per prima cosa inizia installando Nginx, PHP con le estensioni necessarie e il database MariaDB per configurare un ambiente di hosting per eseguire Litchi.

Su Cent/RHEL/Rocky Linux e AlmaLinux

yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
yum install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
yum install yum-utils
yum-config-manager --enable remi-php74   [Install PHP 7.4]
yum install nginx php php-fpm php-mysqli php-exif php-mbstring php-json php-zip php-gd php-imagick mariadb-server mariadb-client

Su Ubuntu e Debian

sudo apt install nginx php php-fpm php-mysqli php-exif php-mbstring php-json php-zip php-gd php-imagick mariadb-server mariadb-client

2. Dopo aver installato i pacchetti necessari, avvia i servizi nginx, php-fpm, e mariadb, abilita al momento dell'avvio e controlla se questi servizi sono attivi e funzionanti.

------------ CentOS/RHEL ------------
systemctl start nginx php-fpm mariadb
systemctl status nginx php-fpm mariadb
systemctl enable nginx php-fpm mariadb
------------ Debian/Ubuntu ------------
sudo systemctl start nginx php7.4-fpm mysql
sudo systemctl status nginx php7.4-fpm mysql
sudo systemctl enable nginx php7.4-fpm mysql

3. Successivamente, se sul tuo sistema è abilitato un firewall, devi aprire le porte 80 e 443 nel firewall per consentire al client richieste al server web Nginx rispettivamente su HTTP e HTTPS, come mostrato.

------------ Debian/Ubuntu ------------
sudo  ufw  allow 80/tcp
sudo  ufw  allow 443/tcp
sudo  ufw  reload
------------ CentOS/RHEL ------------
firewall-cmd --zone=public --permanent --add-port=80/tcp
firewall-cmd --zone=public --permanent --add-port=443/tcp
firewall-cmd --reload

4. Per eseguire Lychee in modo efficace, si consiglia di aumentare i valori delle seguenti proprietà nel file php.ini.

vim /etc/php/php.ini			#CentOS/RHEL
sudo vim /etc/php/7.4/fpm/php.ini     #Ubuntu/Debian 

Cerca questi parametri PHP e modifica i loro valori in:

max_execution_time = 200
post_max_size = 100M
upload_max_size = 100M
upload_max_filesize = 20M
memory_limit = 256M

5. Ora configura PHP-FPM per impostare l'utente e il gruppo, ascolta il file www.conf socket come spiegato.

vim /etc/php-fpm.d/www.conf		        #CentOS/RHEL
sudo vim /etc/php/7.0/fpm/pool.d/www.conf	#Ubuntu/Debian

Cerca le direttive seguenti per impostare l'utente/gruppo di processi Unix (cambia www-data in nginx su CentOS).

user = www-data
group = www-data

Inoltre, modificare la direttiva listen con cui accettare le richieste FastCGI a un socket Unix.

listen = /run/php/php7.4-fpm.sock

E imposta le autorizzazioni di proprietà appropriate per il socket Unix utilizzando la direttiva (cambia www-data in nginx su CentOS/RHEL).

listen.owner = www-data
listen.group = www-data

Salva il file e riavvia i servizi nginx e php-fpm.

systemctl restart nginx php-fpm              #CentOS/RHEL
sudo systemctl restart nginx php7.4-fpm      #Ubuntu/Debian

Passaggio 2: installazione sicura di MariaDB

6. In questo passaggio, dovresti proteggere l'installazione del database MariaDB (che non è protetto per impostazione predefinita se installato su un nuovo sistema), eseguendo lo script di sicurezza fornito con pacchetto binario.

Esegui il comando seguente come root per avviare lo script.

sudo mysql_secure_installation

Ti verrà richiesto di impostare una password root, rimuovere gli utenti anonimi, disabilitare l'accesso root da remoto e rimuovere il database di test. Dopo aver creato una password di root, rispondi sì/y al resto delle domande.

Enter current password for root (enter for none):
Set root password? [Y/n] y 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

Passaggio 3: installa il sistema di gestione delle foto di Lychee

7. Per installare Lychee, devi innanzitutto creare un database con le autorizzazioni appropriate utilizzando i seguenti comandi.

sudo mysql -u root -p
MariaDB [(none)]> CREATE DATABASE lychee; 
MariaDB [(none)]> CREATE USER 'lycheeadmin'@'localhost' IDENTIFIED BY '=@!#@%$Lost';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON  lychee.* TO 'lycheeadmin'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

8. Successivamente, spostati nella radice del documento web e prendi l'ultima versione di Lychee utilizzando lo strumento da riga di comando git, come mostrato.

cd /var/www/html/
sudo git clone --recurse-submodules https://github.com/LycheeOrg/Lychee.git

9. Quindi imposta le autorizzazioni e la proprietà corrette sulla directory di installazione come mostrato (sostituisci admin con un nome utente sul tuo sistema).

------------ CentOS/RHEL ------------
chown admin:nginx -R /var/www/html/Lychee/public
chmod 775 -R /var/www/html/Lychee/public
------------ Debian/Ubuntu ------------
sudo chown admin:www-data -R /var/www/html/Lychee/public
sudo chmod 775  -R /var/www/html/Lychee/public

10. In questo passaggio, devi impostare compositore nella directory di installazione lychee, che verrà utilizzata per installare le dipendenze PHP.

cd Lychee/
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
php composer.phar update

Passaggio 4: configura Nginx Server Block per Lychee

12. Successivamente, è necessario creare e configurare un blocco server Nginx per l'applicazione Lychee in /etc/nginx/conf.d/.

vim /etc/nginx/conf.d/lychee.conf

Aggiungi la seguente configurazione nel file sopra, ricorda di utilizzare il tuo nome di dominio invece di lychee.example.com (questo è solo un dominio fittizio).

server {
	listen      80;
	server_name	 lychee.example.com;
	root         	/var/www/html/Lychee/public;
	index       	index.html;

	charset utf-8;
	gzip on;
	gzip_types text/css application/javascript text/javascript application/x-javascript 	image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
	location / {
		try_files $uri $uri/ /index.php?$query_string;
	}
	location ~ \.php {
		include fastcgi.conf;
		fastcgi_split_path_info ^(.+\.php)(/.+)$;
		fastcgi_pass unix:/run/php/php7.0-fpm.sock;
	}
	location ~ /\.ht {
		deny all;
	}
}

Quindi salva il file e riavvia il server web Nginx e PHP-FPM per applicare le modifiche recenti.

systemctl restart nginx php-fpm              #CentOS/RHEL
sudo systemctl restart nginx php7.0-fpm      #Ubuntu/Debian

Passaggio 5: completare l'installazione di Lychee tramite browser Web

13. Ora utilizza l'URL lychee.example.com per aprire il programma di installazione web Lychee nel tuo browser e fornisci le impostazioni di connessione al database e inserisci il nome del database per cui hai creato litchi e fai clic su Connetti.

14. Successivamente, inserisci un nome utente e una password per la tua installazione e fai clic su Crea accesso. Dopo l'accesso, arriverai alla dashboard di amministrazione che contiene gli Album predefiniti, come mostrato nello screenshot seguente.

Per caricare una foto o importarla da un collegamento o importarla da Dropbox o da un altro server o aggiungere un album, fai clic sul segno +. E per visualizzare le foto in un album, è sufficiente fare clic su di esso.

Per ulteriori informazioni, visitare la home page di Lychee: https://lycheeorg.github.io/

Lychee è un sistema di gestione delle foto PHP open source, facile da usare ed elegante per gestire e condividere foto. Se hai domande o commenti, utilizza il modulo sottostante per scriverci.