Lychee 3.1 Photo Album installeren op een CentOS 7 LAMP VPS

Lychee 3.1 Photo Album is een eenvoudige en flexibele, gratis en open source tool voor fotobeheer die op een VPS-server draait. Het wordt binnen enkele seconden geïnstalleerd, zodat u snel en veilig foto's kunt uploaden, beheren en delen. Lychee 3.1 beschikt over Dropbox-import (met een geldige drop-ins app-sleutel). Het kan worden uitgebreid met nieuwe functies via plug-ins waarmee u bijvoorbeeld kunt synchroniseren met elke map met foto's, foto's kunt uploaden via SSH, RSS-feeds kunt maken van uw foto's, watermerken aan uw foto's kunt toevoegen, en vele andere geavanceerde en handige functies.

In deze tutorial gaan we Lychee 3.1 Photo Album installeren op een CentOS 7 LAMP VPS met Apache-webserver, PHP 7.1 en een MariaDB-database.

Vereisten

  • Een schone Vultr CentOS 7-serverinstantie met SSH-toegang

Stap 1: Voeg een Sudo-gebruiker toe

We beginnen met het toevoegen van een nieuwe sudogebruiker.

Log eerst in op uw server als root:

ssh root@YOUR_VULTR_IP_ADDRESS

Voeg een nieuwe gebruiker toe met de naam user1(of uw favoriete gebruikersnaam):

useradd user1

Stel vervolgens het wachtwoord voor de user1gebruiker in:

passwd user1

Voer desgevraagd een veilig en gedenkwaardig wachtwoord in.

Controleer nu het /etc/sudoersbestand om er zeker van te zijn dat de sudoersgroep is ingeschakeld:

visudo

Zoek naar een sectie als deze:

%wheel        ALL=(ALL)       ALL

Deze regel vertelt ons dat gebruikers die lid zijn van de wheelgroep de sudoopdracht kunnen gebruiken om rootprivileges te verkrijgen . Het wordt standaard niet becommentarieerd, dus u kunt het bestand eenvoudig afsluiten.

Vervolgens moeten we user1aan de wheelgroep toevoegen:

usermod -aG wheel user1

We kunnen het user1groepslidmaatschap verifiëren en controleren of de usermodopdracht werkte met de groupsopdracht:

groups user1

Gebruik nu de suopdracht om over te schakelen naar het nieuwe sudo-gebruikersaccount user1:

su - user1

De opdrachtprompt wordt bijgewerkt om aan te geven dat u nu bent aangemeld bij het user1account. U kunt dit verifiëren met de whoamiopdracht:

whoami

Start nu de sshdservice opnieuw op , zodat u kunt inloggen via sshhet nieuwe niet-root sudo-gebruikersaccount dat u zojuist hebt gemaakt:

sudo systemctl restart sshd

Sluit het user1account af:

exit

Sluit het rootaccount af (waarmee uw sshsessie wordt verbroken ):

exit

U kunt nu sshvanaf uw lokale host toegang krijgen tot de serverinstantie met het nieuwe niet-root sudo-gebruikersaccount user1:

ssh user1@YOUR_VULTR_IP_ADDRESS

Als je sudo wilt uitvoeren zonder elke keer een wachtwoord te moeten typen, open je het /etc/sudoersbestand opnieuw met visudo:

sudo visudo

Bewerk de sectie voor de wheelgroep zodat deze er als volgt uitziet:

%wheel        ALL=(ALL)       NOPASSWD: ALL

Let op: Het uitschakelen van de wachtwoordvereiste voor de sudo-gebruiker wordt niet aanbevolen, maar wordt hier wel vermeld omdat het de serverconfiguratie veel handiger en minder frustrerend kan maken, vooral tijdens langere systeembeheersessies. Als u zich zorgen maakt over de beveiligingsimplicaties, kunt u de configuratiewijziging altijd terugzetten naar het origineel nadat u uw beheertaken hebt voltooid.

Wanneer u zich rootvanuit het sudogebruikersaccount wilt aanmelden bij het gebruikersaccount , kunt u een van de volgende opdrachten gebruiken:

sudo -i
sudo su -

U kunt het rootaccount op sudoelk moment verlaten en terugkeren naar uw gebruikersaccount door simpelweg het volgende te typen:

exit

Stap 2: Update CentOS 7-systeem

Voordat we pakketten installeren op de CentOS-serverinstantie, zullen we eerst het systeem bijwerken.

Zorg ervoor dat u bij de server bent aangemeld met een niet-root sudo-gebruiker en voer de volgende opdracht uit:

sudo yum -y update

Stap 3: Installeer Apache Web Server

Installeer de Apache-webserver:

sudo yum -y install httpd

Gebruik vervolgens de systemctlopdracht om Apache te starten en in te schakelen om automatisch uit te voeren tijdens het opstarten:

sudo systemctl enable httpd
sudo systemctl start httpd

Controleer uw Apache-configuratiebestand om ervoor te zorgen dat de DocumentRootrichtlijn naar de juiste map verwijst:

sudo vi /etc/httpd/conf/httpd.conf 

De DocumentRootconfiguratieoptie ziet er als volgt uit:

DocumentRoot "/var/www/html"

Laten we er nu voor zorgen dat de mod_rewriteApache-module is geladen. We kunnen dit doen door in het configuratiebestand van de Apache-basismodules te zoeken naar de term ' mod_rewrite'.

Open het bestand:

sudo vi /etc/httpd/conf.modules.d/00-base.conf

Zoek naar de term mod_rewrite.

Als de mod_rewriteApache-module is geladen, vindt u een configuratieregel die er als volgt uitziet:

LoadModule rewrite_module modules/mod_rewrite.so

Als de bovenstaande regel begint met een puntkomma, moet je de puntkomma verwijderen om de regel te verwijderen en de module te laden. Dit geldt natuurlijk ook voor alle andere vereiste Apache-modules.

We moeten nu het standaard configuratiebestand van Apache bewerken zodat het mod_rewritecorrect werkt met Lychee.

Open het bestand:

sudo vi /etc/httpd/conf/httpd.conf

Zoek vervolgens de sectie die begint met <Directory "/var/www/html">en verander AllowOverride nonein AllowOverride All. Het eindresultaat (met alle opmerkingen verwijderd) ziet er ongeveer zo uit:

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Sla nu het Apache-configuratiebestand op en sluit het.

We zullen Apache aan het einde van deze tutorial opnieuw opstarten, maar Apache regelmatig herstarten tijdens installatie en configuratie is zeker een goede gewoonte, dus laten we het nu doen:

sudo systemctl restart httpd

Stap 4: Open Web Firewall-poorten

We moeten nu de standaard HTTPen HTTPSpoorten openen omdat ze firewalldstandaard worden geblokkeerd .

Open de firewallpoorten:

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp

Laad de firewall opnieuw om de wijzigingen toe te passen:

sudo firewall-cmd --reload

U ziet het woord successin uw terminal na elke succesvolle firewallconfiguratieopdracht.

We kunnen snel controleren of de Apache- HTTPpoort open is door naar het IP-adres of domein van de serverinstantie in een browser te gaan:

http://YOUR_VULTR_IP_ADDRESS/

U ziet de standaard Apache-webpagina in uw browser.

Stap 5: Schakel SELinux uit (indien ingeschakeld)

SELinux staat voor "Security Enhanced Linux". Het is een beveiligingsverbetering voor Linux die gebruikers en beheerders meer controle geeft over toegangscontrole. Het is standaard uitgeschakeld op Vultr CentOS 7-instanties, maar we zullen de stappen bespreken om het uit te schakelen, voor het geval je niet begint met een schone installatie en het eerder was ingeschakeld.

Om problemen met bestandsrechten met Lychee te voorkomen, moeten we ervoor zorgen dat SELinux is uitgeschakeld.

Laten we eerst controleren of SELinux is ingeschakeld of uitgeschakeld met de sestatusopdracht:

sudo sestatus

Als u zoiets ziet als: SELinux status: disableddan is het zeker uitgeschakeld en kunt u direct doorgaan naar stap 6. Als u een ander bericht ziet, moet u deze sectie voltooien.

Open het SELinux-configuratiebestand met uw favoriete terminal-editor:

sudo vi /etc/selinux/config

Ga SELINUX=enforcingnaar SELINUX=disableden sla het bestand op.

Om de configuratiewijziging toe te passen, vereist SELinux een herstart van de server, dus je kunt de server herstarten via het Vultr-configuratiescherm of je kunt gewoon de shutdownopdracht gebruiken:

sudo shutdown -r now

Wanneer de server opnieuw opstart, wordt uw SSH-sessie verbroken en ziet u mogelijk een bericht met informatie over een 'broken pipe'of 'Connection closed by remote host'. Dit is niets om je zorgen over te maken, wacht gewoon ongeveer 20 seconden en dan SSH weer terug (met je eigen gebruikersnaam en domein):

ssh user1@YOUR_DOMAIN

Of (met uw eigen gebruikersnaam en IP-adres):

ssh user1@YOUR_VULTR_IP_ADDRESS

Nadat je weer bent ingelogd, moet je de status van SELinux opnieuw controleren met het sestatuscommando om er zeker van te zijn dat het correct is uitgeschakeld:

sudo sestatus

Je zou een bericht moeten zien SELinux status: disabled. Als u een bericht ziet SELinux status: enabled(of iets dergelijks), moet u de bovenstaande stappen herhalen en ervoor zorgen dat u uw server correct herstart.

Stap 6: Installeer en configureer PHP 7.1

CentOS 7 vereist dat we een externe repo toevoegen om PHP 7.1 te installeren, dus voer de volgende opdracht uit:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

We kunnen nu PHP 7.1 installeren samen met alle benodigde PHP-modules die Lychee nodig heeft:

sudo yum -y install php71w php71w-gd php71w-mbstring php71w-mysql php71w-xml php71w-common php71w-pdo php71w-mysqlnd

Omdat we Lychee mogelijk moeten gebruiken om grote bestanden te uploaden en te verwerken, moeten we enkele van de standaard PHP-instellingen wijzigen.

Open het php.iniconfiguratiebestand:

sudo vi /etc/php.ini

Wijzig de volgende PHP-opties in deze waarden:

max_execution_time = 300
post_max_size = 100M
upload_max_size = 100M
upload_max_filesize = 50M
memory_limit = 256M

Wanneer u klaar bent, slaat u het bestand op en sluit u het af.

Als je ooit problemen krijgt met het niet kunnen uploaden of verwerken van grote bestanden met Lychee, probeer dan de bovenstaande waarden verder te verhogen, want dat kan je problemen oplossen.

Stap 7: Installeer MariaDB (MySQL) Server

CentOS 7 gebruikt standaard de MariaDB-databaseserver, een verbeterde, volledig open source, door de gemeenschap ontwikkelde, drop-in vervanging voor MySQL-server.

MariaDB-databaseserver installeren:

sudo yum -y install mariadb-server

Start en schakel MariaDB-server in om automatisch uit te voeren tijdens het opstarten:

sudo systemctl enable mariadb
sudo systemctl start mariadb    

Beveilig uw MariaDB-serverinstallatie:

sudo mysql_secure_installation

Het rootwachtwoord is leeg, dus druk gewoon op Enter wanneer u om het rootwachtwoord wordt gevraagd .

Wanneer u wordt gevraagd om een ​​MariaDB / MySQL- rootgebruiker te maken, selecteert u "Y" (voor ja) en voert u vervolgens een veilig rootwachtwoord in. Antwoord gewoon "Y" op alle andere ja / nee-vragen, aangezien de standaardsuggesties de veiligste opties zijn.

Stap 8: Maak een database voor Lychee

Log in op de MariaDB-shell als de MariaDB- rootgebruiker door de volgende opdracht uit te voeren:

sudo mysql -u root -p

Om toegang te krijgen tot de MariaDB-opdrachtprompt, voert u eenvoudig het MariaDB- rootwachtwoord in wanneer daarom wordt gevraagd.

Voer de volgende query's uit om een ​​MariaDB-database en databasegebruiker voor Lychee te maken:

CREATE DATABASE lychee_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'lychee_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON lychee_db.* TO 'lychee_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

U kunt desgewenst de databasenaam lychee_dben gebruikersnaam vervangen lychee_userdoor iets meer naar uw zin. (Houd er rekening mee dat de standaard maximale lengte voor gebruikersnamen in MariaDB op CentOS 7 16 tekens is). Zorg er ook voor dat u "UltraSecurePassword" vervangt door een echt veilig wachtwoord.

Stap 9: Installeer Lychee-bestanden

Wijzig uw huidige werkdirectory in de standaardwebdirectory:

cd /var/www/html/

Als je een foutmelding krijgt die zoiets zegt, 'No such file or directory'probeer dan het volgende commando:

cd /var/www/ ; sudo mkdir html ; cd html

Uw huidige directory zal nu: /var/www/html/. U kunt dit controleren met de opdracht pwd(print working directory):

pwd

Gebruik nu wgetom het Lychee-installatiepakket te downloaden:

sudo wget --content-disposition https://github.com/electerious/Lychee/archive/v3.1.6.zip

Let op: u moet zeker de meest recente versie controleren door naar de Lychee-downloadpagina te gaan .

Maak een lijst van de huidige map om te controleren of u het bestand met succes hebt gedownload:

ls -la

Laten we snel installeren, unzipzodat we het bestand kunnen uitpakken:

sudo yum -y install unzip

Pak nu het zip-archief uit:

sudo unzip Lychee-3.1.6.zip

Verplaats alle installatiebestanden naar de webhoofdmap:

sudo mv -v Lychee-3.1.6/* Lychee-3.1.6/.* /var/www/html 2>/dev/null

Wijzig het eigendom van de webbestanden om problemen met toestemmingen te voorkomen:

sudo chown -R apache:apache * ./

Set wereld leesbaar machtigingen voor de uploaden datadirectories:

sudo chmod -R 777 data/ upload/

Start Apache opnieuw:

sudo systemctl restart httpd

Nu zijn we klaar om door te gaan naar de laatste stap.

Stap 10: voltooi de Lychee-installatie

Het is nu tijd om het IP-adres van uw serverinstantie in uw browser te bezoeken, of als u uw Vultr DNS-instellingen al hebt geconfigureerd (en voldoende tijd heeft gegeven om te verspreiden), kunt u in plaats daarvan eenvoudig uw domein bezoeken.

Om toegang te krijgen tot de Lychee-installatiepagina, voert u het IP-adres van uw Vultr-instantie in de adresbalk van uw browser in:

http://YOUR_VULTR_IP_ADDRESS/
  1. Database Connection DetailsVoer op de pagina de volgende databasewaarden in:

    Database Host:                  localhost
    Database Username:              lychee_user
    Password:                       UltraSecurePassword
    Database Name:                  lychee_db
    

    Klik Connectom door te gaan.

  2. Voer een Usernameen in Passwordvoor uw installatie:

    Username:               <your username>
    Password:               <a secure password>
    

    Klik Create Loginom door te gaan.

U wordt automatisch doorgestuurd naar de uploadpagina van uw album en ingelogd bij de admin-sectie. Als je de instellingen wilt wijzigen, klik je op het tandwielpictogram in de linkerbovenhoek van de pagina.

Om de meer geavanceerde instellingen te wijzigen, moet je terugkeren naar de terminal en het Lychee-configuratiebestand bewerken:

sudo vi data/config.php

Als u uw Vultr DNS-instellingen nog niet hebt geconfigureerd, kunt u dit doen via het Vultr DNS-configuratiescherm.

Het is ook raadzaam om uw site te configureren om SSL te gebruiken, aangezien de meeste moderne browsers waarschuwingen geven wanneer sites geen SSL hebben ingeschakeld en SSL-certificaten nu gratis beschikbaar zijn.

Je bent nu in ieder geval klaar om te beginnen met het uploaden en delen van je foto's. Zorg ervoor dat u de Lychee-documenten raadpleegt voor meer informatie over het configureren en gebruiken van uw fotomanager.



Leave a Comment

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek

ReactOS: is dit de toekomst van Windows?

ReactOS: is dit de toekomst van Windows?

ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.

Blijf verbonden via WhatsApp Desktop-app 24 * 7

Blijf verbonden via WhatsApp Desktop-app 24 * 7

WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

Wat is een logboekbestandssysteem en hoe werkt het?

Wat is een logboekbestandssysteem en hoe werkt het?

Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.