1. Mis on NextCloud?
NextCloud on tasuta avatud lähtekoodiga isehostitav pilvelahendus. Funktsionaalselt sarnaneb see Dropboxiga. Patenditud pilvelahendused (Dropbox, Google Drive jne) on mugavad, kuid hinnaga: neid saab kasutada isikuandmete kogumiseks, kuna teie failid on salvestatud nende arvutitesse. Kui olete privaatsuse pärast mures, saate lülituda NextCloud-le, mille saate paigaldada oma privaatserverisse või virtuaalsesse privaatserverisse (VPS). Saate oma failid NextCloud-i kaudu oma serverisse üles laadida ja seejärel sünkroonida need oma lauaarvuti, sülearvuti või nutitelefoniga. Nii on teil täielik kontroll oma andmete üle.
NextCloudi funktsioonid
2. Paigaldage Nginx
Nginx on suure jõudlusega veebiserver ja tänapäeval väga populaarne. Seda saab kasutada ka pöördpuhverserverina ja vahemällu salvestava serverina. Nginxi veebiserveri paigaldamiseks sisestage järgmine käsk.
Pärast selle paigaldamist saame lubada Nginxil alglaadimisel automaatse käivituse, käivitades järgmise käsu.
Seejärel käivitage Nginx selle käsuga:
Nüüd kontrollige selle olekut.
Väljund:
"Enabled" näitab, et automaatne käivitamine alglaadimise ajal on lubatud ja näeme, et Nginx töötab. Samuti saate väljundist näha, kui palju RAM-i Nginx kasutab. Kui ülaltoodud käsk ei sulgu kohe pärast käivitamist. Väljumiseks peate vajutama nuppu “q”.
Kontrollige Nginxi versiooni.
Väljund:
Nüüd sisestage brauseri aadressiribale oma Ubuntu 20.04 serveri avalik IP aadress. Peaksite nägema veebilehte "Welcome to Nginx", mis tähendab, et Nginxi veebiserver töötab korralikult.
Kui ühenduse loomisest keeldutakse või seda ei õnnestu luua, võib tulemüür takistada TCP porti 80 sissetulevaid päringuid. Kui kasutate iptables tulemüüri, peate TCP pordi 80 avamiseks käivitama järgmise käsu.
Kui kasutate UFW tulemüüri, käivitage see käsk TCP pordi 80 avamiseks.
Lõpuks peame muutma veebikataloogi omanikuks www-data (Nginxi kasutaja). Vaikimisi kuulub see juurkasutajale.
3. Paigaldage MariaDB andmebaasiserver
MariaDB on MySQL-i asendaja. Selle on välja töötanud endised MySQL-i meeskonna liikmed, kes on mures, et Oracle võib muuta MySQL-i suletud lähtekoodiga tooteks. MariaDB paigaldamiseks Ubuntu 20.04 sisestage järgmine käsk.
Pärast selle paigaldamist tuleks MariaDB serverit automaatselt jälgida. Selle oleku kontrollimiseks kasutage systemctl.
Väljund:
Kui see ei tööta, käivitage see järgmise käsuga:
MariaDB automaatse käivitumise lubamiseks alglaadimise ajal käivitage:
Nüüd käivitage paigaldamisjärgne turvaskript.
Kui see palub teil sisestada MariaDB juurparool, vajutage sisestusklahvi, kuna juurparool pole veel määratud. Seejärel sisestage MariaDB serveri juurparooli määramiseks y.
Järgmisena saate kõigile ülejäänud küsimustele vastamiseks vajutada sisestusklahvi, mis eemaldab anonüümse kasutaja, keelab kaug juurdepääsu ja eemaldab testandmebaasi. See samm on MariaDB andmebaasi turvalisuse põhinõue. (Pange tähele, et Y on suurtähtedega, mis tähendab, et see on vaikevastus.)
Vaikimisi kasutab Ubuntu MaraiDB pakett kasutaja sisselogimise autentimiseks unix_socketit, mis tähendab põhimõtteliselt, et saate MariaDB konsooli sisse logimiseks kasutada operatsioonisüsteemi kasutajanime ja parooli. Seega saate sisselogimiseks käivitada järgmise käsu ilma MariaDB juurparooli andmata.
Või:
Väljumiseks:
Kontrollige MariaDB serveri versiooni teavet.
4. Paigaldage PHP oma Ubuntule
Samuti on Nextcloudi käitamiseks vajalik PHP. PHP paketid lisatakse Ubuntu hoidlatesse. Hoidlate versioonid ei pruugi olla uuemad. Kui teil on vaja paigaldada uuemad versioonid, peate lisama kolmanda osapoole PPA hoidla.
Kolmanda osapoole hoidlasse PHP uuemate versioonidega käivitage allolevad käsud.
PHP uusim versioon on PHP 8.1, aga ei soovita kõige uuemat paigaldada, kuna sellega võivad tekkida probleemid. Paigaldame PHP 7.4
PHP laiendused on tavaliselt vajalikud sisuhaldussüsteemide (CMS) jaoks, nagu näiteks WordPress. Näiteks kui teie paigaldusel puudub php7.4-xml, võivad mõned teie WordPressi saidi lehed olla tühjad ja Nginxi vealogist leiate vea, näiteks:
Järgmisena soovite muuta mõnda PHP konfiguratsiooniseadet, mis töötavad Nextcloud-ga suurepäraselt. PHP vaike konfiguratsioonifaili avamiseks käivitage alloleva käsu.
Seejärel muutke reasätteid nii, et need oleksid samal joonel nagu allolevad. Salvestage muudatused ja väljuge.
5. Loome Nextcloudile andmebaasi
Nagu eespool mainitud, kasutab Nextcloud oma sisu salvestamiseks andmebaase. Nextcloudi andmebaasi loomiseks käivitage järgmised käsud:
Seejärel looge andmebaas nimega nextcloud
Järgmisena looge andmebaasile kasutaja nimega nextclouduser ja lisaks sisestage parool
Seejärel andke kasutajale täielik juurdepääs andmebaasile
Lõpuks salvestage muudatused ja väljuge.
6. Lae alla Nextcloud
Oleme valmis Nextcloudi alla laadima ja alustama selle konfigureerimist. Esmalt käivitage allolevad käsud, et laadida alla Nextcloudi uusim versioon selle hoidlast.
Järgmisena pakkige lahti allalaaditud sisu Nginxi juurkataloogi. See loob kausta nimega nextcloud.
Seejärel käivitage allolev käsk, et www-data kasutajal oleks uus Nextcloudi kataloog.
7. Looge Nextcloudi jaoks Nginxi konfiguratsioonifail
Laadisime Nextcloudi sisu alla uude kausta, mille nimi on Nextcloud. Nüüd konfigureerime Nginxi looma uue serveriploki, mida kasutada meie Nextcloudi veebisaidiga. Nginxiga saate luua nii palju serveriplokke. Selleks käivitage allolevad käsud, et luua kataloogis /etc/nginx/sites-available/ meie Nextcloudi serveriploki majutamiseks uus konfiguratsioonifail nimega nextcloud.conf.
Kopeerige ja kleepige allolev sisu faili ja salvestage:
Salvestage fail ja väljuge.
Pärast ülaltoodud faili salvestamist käivitage allolevad käsud, et lubada uus fail, mis sisaldab meie Nextcloudi serveriplokki ja muid olulisi Nginxi mooduleid.
Pärast seda taaskäivitage Nginx.
Kui ülaltoodud konfiguratsioon on tehtud, siis laadige Nginx uuesti:
NB! Võib tekkida vajadus eraldi paigaldada ja lubada PHP moodulid. Selleks käivitage järgnevad käsud:
Nüüd kui Nextcloud on alla laaditud ja vajalikud teenused konfigureeritud, avage brauser ja alustage Nextcloudi paigaldamist, külastades oma serveri domeeninime või IP aadressi, millele järgneb /nextcloud:
Siiski tahame tagada, et meie server oleks Let’s Encrypt tasuta SSL sertifikaatidega kaitstud. Niisiis, jätkake allpool, et õppida, kuidas luua veebisaitide jaoks Let’s Encrypt SSL sertifikaati.
8. Seadistame HTTPS Nextcloudile
Oleme kirjutanud postituse selle kohta, kuidas luua ja hallata Let’s Encrypt SSL sertifikaate Nginxi veebiserveri jaoks. Saate seda postitust kasutada, et seda siin oma Nextcloudi veebisaidi jaoks rakendada. Et lugeda postitust selle kohta, kuidas veebisaidi jaoks Let’s Encrypt SSL sertifikaate genereerida, klõpsake SIIA
Kui teil õnnestus Let’s Encrypt SSL sertifikaat genereerida, peaksite seejärel meie Nextcloudi veebisaidi serveriploki uuesti avama, käivitades allolevad käsud.
Uue Nextcloudi serveri plokkide konfiguratsioonid peaksid välja nägema sarnased allolevale reale. Märkige esiletõstetud read.
Salvestage fail ja seejärel taaskäivitage Nginx ning PHP, kasutades allolevaid käske:
Lõpuks, kui kõik läks plaanipäraselt, peaksite saama käivitada Nextcloudi häälestusviisardi, sirvides HTTPS kaudu serveri hostinime või IP aadressi.
Ilmuma peaks Nextcloudi häälestusviisard. Seadistuse lõpuleviimiseks järgige viisardit.
----
See postitus näitas teile, kuidas seadistada Nextcloud Ubuntu Linuxis koos Nginxi ja Let’s Encryptiga. Kui leiate ülaltoodus mingi vea või parema lahenduse, siis võtke kindlasti meiega ühendust.
NB! Kindlasti üle vaadata failisisude treppimine, kuna antud foorum lükkab kogu koodi paremasse serva.
NextCloud on tasuta avatud lähtekoodiga isehostitav pilvelahendus. Funktsionaalselt sarnaneb see Dropboxiga. Patenditud pilvelahendused (Dropbox, Google Drive jne) on mugavad, kuid hinnaga: neid saab kasutada isikuandmete kogumiseks, kuna teie failid on salvestatud nende arvutitesse. Kui olete privaatsuse pärast mures, saate lülituda NextCloud-le, mille saate paigaldada oma privaatserverisse või virtuaalsesse privaatserverisse (VPS). Saate oma failid NextCloud-i kaudu oma serverisse üles laadida ja seejärel sünkroonida need oma lauaarvuti, sülearvuti või nutitelefoniga. Nii on teil täielik kontroll oma andmete üle.
NextCloudi funktsioonid
- Tasuta ja avatud lähtekoodiga
- Täielik krüptimine, mis tähendab, et faile saab enne serverisse üleslaadimist kliendiseadmetes krüpteerida, nii et isegi kui keegi teie serveri varastab, ei saa ta teie faile lugeda.
- Saab integreerida veebipõhise kontorikomplektiga (Collobora Online, OnlyOffice), et saaksite luua ja redigeerida oma .doc, .ppt ja .xls faile otse NextCloud-st.
- Rakenduste pood sisaldab sadu rakendusi funktsioonide laiendamiseks (nt kalendrirakendus, kontaktide rakendus, märkmete tegemise rakendus, videokonverentsi rakendus jne).
- Sünkroonimisklient on saadaval operatsioonisüsteemides Linux, macOS, Windows, iOS ja Android.
2. Paigaldage Nginx
Nginx on suure jõudlusega veebiserver ja tänapäeval väga populaarne. Seda saab kasutada ka pöördpuhverserverina ja vahemällu salvestava serverina. Nginxi veebiserveri paigaldamiseks sisestage järgmine käsk.
Kood:
sudo apt install nginx
Kood:
sudo systemctl enable nginx
Kood:
sudo systemctl start nginx
Kood:
sudo systemctl status nginx
HTML kood:
nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2020-04-10 14:11:43 UTC; 3s ago Docs: man:nginx(8) Process: 8533 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 8545 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 8549 (nginx) Tasks: 3 (limit: 9451) Memory: 3.9M CGroup: /system.slice/nginx.service ├─8549 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; ├─8550 nginx: worker process └─8551 nginx: worker process
Kontrollige Nginxi versiooni.
Kood:
nginx -v
HTML kood:
nginx version: nginx/1.17.9 (Ubuntu)
Kui ühenduse loomisest keeldutakse või seda ei õnnestu luua, võib tulemüür takistada TCP porti 80 sissetulevaid päringuid. Kui kasutate iptables tulemüüri, peate TCP pordi 80 avamiseks käivitama järgmise käsu.
Kood:
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
Kood:
sudo ufw allow http
Kood:
sudo chown www-data:www-data /usr/share/nginx/html -R
MariaDB on MySQL-i asendaja. Selle on välja töötanud endised MySQL-i meeskonna liikmed, kes on mures, et Oracle võib muuta MySQL-i suletud lähtekoodiga tooteks. MariaDB paigaldamiseks Ubuntu 20.04 sisestage järgmine käsk.
Kood:
sudo apt install mariadb-server mariadb-client
Kood:
systemctl status mariadb
HTML kood:
mariadb.service - MariaDB 10.3.22 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2020-04-10 14:19:16 UTC; 18s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 9161 (mysqld) Status: "Taking your SQL requests now..." Tasks: 31 (limit: 9451) Memory: 64.7M CGroup: /system.slice/mariadb.service └─9161 /usr/sbin/mysqld
Kood:
sudo systemctl start mariadb
Kood:
sudo systemctl enable mariadb
Kood:
sudo mysql_secure_installation
HTML kood:
If you've just installed MariaDB, and haven't set the root password yet, you should just press enter here. Enter current password for root (enter for none): PRESS ENTER Switch to unix_socket authentication [Y/n] n Change the 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 All done!
Vaikimisi kasutab Ubuntu MaraiDB pakett kasutaja sisselogimise autentimiseks unix_socketit, mis tähendab põhimõtteliselt, et saate MariaDB konsooli sisse logimiseks kasutada operatsioonisüsteemi kasutajanime ja parooli. Seega saate sisselogimiseks käivitada järgmise käsu ilma MariaDB juurparooli andmata.
Kood:
sudo mariadb -u root
Kood:
sudo mysql -u root -p
Kood:
exit;
Kood:
mariadb --version
Samuti on Nextcloudi käitamiseks vajalik PHP. PHP paketid lisatakse Ubuntu hoidlatesse. Hoidlate versioonid ei pruugi olla uuemad. Kui teil on vaja paigaldada uuemad versioonid, peate lisama kolmanda osapoole PPA hoidla.
Kolmanda osapoole hoidlasse PHP uuemate versioonidega käivitage allolevad käsud.
Kood:
sudo apt-get install software-properties-common
Kood:
sudo add-apt-repository ppa:ondrej/php
Kood:
sudo apt install php7.4-fpm php7.4-imagick php7.4-common php7.4-mysql php7.4-gmp php7.4-imap php7.4-json php7.4-pgsql php7.4-ssh2 php7.4-sqlite3 php7.4-ldap php7.4-curl php7.4-intl php7.4-mbstring php7.4-xmlrpc php7.4-gd php7.4-xml php7.4-cli php7.4-zip
HTML kood:
PHP message: PHP Fatal error: Uncaught Error: Call to undefined function xml_parser_create()
Kood:
sudo nano /etc/php/7.4/fpm/php.ini
HTML kood:
file_uploads = On allow_url_fopen = On short_open_tag = On memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = America/Chicago
Nagu eespool mainitud, kasutab Nextcloud oma sisu salvestamiseks andmebaase. Nextcloudi andmebaasi loomiseks käivitage järgmised käsud:
Kood:
sudo mysql -u root -p
Kood:
CREATE DATABASE nextcloud;
Kood:
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'uus_parool_siia';
Kood:
GRANT ALL ON nextcloud.* TO 'nextclouduser'@'localhost' WITH GRANT OPTION;
Kood:
FLUSH PRIVILEGES;
Kood:
EXIT;
Oleme valmis Nextcloudi alla laadima ja alustama selle konfigureerimist. Esmalt käivitage allolevad käsud, et laadida alla Nextcloudi uusim versioon selle hoidlast.
Järgmisena pakkige lahti allalaaditud sisu Nginxi juurkataloogi. See loob kausta nimega nextcloud.
Kood:
wget https://download.nextcloud.com/server/releases/nextcloud-23.0.2.zip -P /tmp
Kood:
sudo unzip /tmp/nextcloud-23.0.2.zip -d /var/www
Kood:
sudo chown -R www-data:www-data /var/www/nextcloud/
Kood:
sudo chmod -R 755 /var/www/nextcloud/
Laadisime Nextcloudi sisu alla uude kausta, mille nimi on Nextcloud. Nüüd konfigureerime Nginxi looma uue serveriploki, mida kasutada meie Nextcloudi veebisaidiga. Nginxiga saate luua nii palju serveriplokke. Selleks käivitage allolevad käsud, et luua kataloogis /etc/nginx/sites-available/ meie Nextcloudi serveriploki majutamiseks uus konfiguratsioonifail nimega nextcloud.conf.
Kood:
sudo nano /etc/nginx/sites-available/nextcloud.conf
HTML kood:
upstream php-handler { server unix:/var/run/php/php7.4-fpm.sock; } server { listen 80; listen [::]:80; root /var/www; index index.php index.html index.htm; server_name example.com; location ^~ /nextcloud { client_max_body_size 512M; fastcgi_buffers 8 4K; fastcgi_ignore_headers X-Accel-Buffering; gzip off; error_page 403 /nextcloud/core/templates/403.php; error_page 404 /nextcloud/core/templates/404.php; location /nextcloud { rewrite ^ /nextcloud/index.php$uri; } location ~ ^/nextcloud/(?:build|tests|config|lib|3rdparty|templates|chang elog|data)/ { return 404; } location ~ ^/nextcloud/(?:\.|autotest|occ|issue|indie|db_|console|core/skeleton/) { return 404; } location ~ ^/nextcloud/core/signature\.json { return 404; } location ~ ^/nextcloud/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|oc[sm]-provider/.+|core/templates/40[34])\.php(?:$|/) { fastcgi_split_path_info ^(.+\.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param modHeadersAvailable true; fastcgi_read_timeout 180; fastcgi_pass php-handler; fastcgi_intercept_errors on; fastcgi_request_buffering off; } location ~ ^/nextcloud/(?:updater|oc[sm]-provider)(?:$|/) { try_files $uri $uri/ =404; index index.php; } # Adding the cache control header for js and css files # Make sure it is BELOW the PHP block location ~ /nextcloud/.*\.(?:css|js) { try_files $uri /nextcloud/index.php$uri$is_args$args; add_header Cache-Control "max-age=15778463" always; add_header X-Content-Type-Options "nosniff" always; add_header X-Frame-Options "SAMEORIGIN" always; add_header X-XSS-Protection "1; mode=block" always; add_header X-Robots-Tag "none" always; add_header X-Download-Options "noopen" always; add_header X-Permitted-Cross-Domain-Policies "none" always; access_log off; } location ~ /nextcloud/.*\.(?:svg|gif|png|html|ttf|woff|ico|jpg|jpeg|map| json) { try_files $uri /nextcloud/index.php$uri$is_args$args; add_header Cache-Control "public, max-age=7200" always; access_log off; } } }
Pärast ülaltoodud faili salvestamist käivitage allolevad käsud, et lubada uus fail, mis sisaldab meie Nextcloudi serveriplokki ja muid olulisi Nginxi mooduleid.
Pärast seda taaskäivitage Nginx.
Kood:
sudo ln -s /etc/nginx/sites-available/nextcloud.conf /etc/nginx/sites-enabled/
Kood:
sudo systemctl restart nginx.service
Kood:
sudo apt install imagemagick php-imagick php7.4-common php7.4-mysql php7.4-fpm php7.4-gd php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-bcmath php7.4-gmp
HTML kood:
http://example.com/nextcloud
8. Seadistame HTTPS Nextcloudile
Oleme kirjutanud postituse selle kohta, kuidas luua ja hallata Let’s Encrypt SSL sertifikaate Nginxi veebiserveri jaoks. Saate seda postitust kasutada, et seda siin oma Nextcloudi veebisaidi jaoks rakendada. Et lugeda postitust selle kohta, kuidas veebisaidi jaoks Let’s Encrypt SSL sertifikaate genereerida, klõpsake SIIA
Kui teil õnnestus Let’s Encrypt SSL sertifikaat genereerida, peaksite seejärel meie Nextcloudi veebisaidi serveriploki uuesti avama, käivitades allolevad käsud.
Kood:
sudo nano /etc/nginx/sites-available/nextcloud.conf
- Esimene serveriplokk kuulab porti 80. See sisaldab 301 ümbersuunamist HTTP ümbersuunamiseks HTTPS-i.
- Teine serveriplokk kuulab porti 443. See sisaldab 301 ümbersuunamist, et suunata www ümber mitte-www domeeni.
HTML kood:
upstream php-handler { server unix:/var/run/php/php7.4-fpm.sock; } server { listen 80; listen [::]:80; root /var/www; index index.php index.html index.htm; server_name example.com www.example.com; include snippets/well-known.conf; return 301 https://$host$request_uri; } server { listen 443 ssl http2; listen [::]:443 ssl http2; root /var/www; index index.php index.html index.htm; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384; add_header Strict-Transport-Security "max-age=31536000; includeSubDomains"; include snippets/well-known.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; listen [::]:443 ssl http2; root /var/www; index index.php index.html index.htm; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:50m; ssl_session_timeout 1d; ssl_session_tickets off; ssl_stapling on; ssl_stapling_verify on; resolver 8.8.8.8 8.8.4.4 valid=300s; resolver_timeout 30s; ssl_dhparam /etc/ssl/certs/dhparam.pem; add_header Strict-Transport-Security "max-age=31536000; includeSubDomains"; location / { return 301 https://$server_name:443$request_uri; } location ^~ /nextcloud { client_max_body_size 512M; fastcgi_buffers 8 4K; fastcgi_ignore_headers X-Accel-Buffering; gzip off; error_page 403 /nextcloud/core/templates/403.php; error_page 404 /nextcloud/core/templates/404.php; location /nextcloud { rewrite ^ /nextcloud/index.php$uri; } location ~ ^/nextcloud/(?:build|tests|config|lib|3rdparty|templates|chang elog|data)/ { return 404; } location ~ ^/nextcloud/(?:\.|autotest|occ|issue|indie|db_|console|core/skeleton/) { return 404; } location ~ ^/nextcloud/core/signature\.json { return 404; } location ~ ^/nextcloud/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|oc[sm]-provider/.+|core/templates/40[34])\.php(?:$|/) { fastcgi_split_path_info ^(.+\.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param HTTPS on; fastcgi_param modHeadersAvailable true; fastcgi_read_timeout 180; fastcgi_pass php-handler; fastcgi_intercept_errors on; fastcgi_request_buffering off; } location ~ ^/nextcloud/(?:updater|oc[sm]-provider)(?:$|/) { try_files $uri $uri/ =404; index index.php; } # Adding the cache control header for js and css files # Make sure it is BELOW the PHP block location ~ /nextcloud/.*\.(?:css|js) { try_files $uri /nextcloud/index.php$uri$is_args$args; add_header Cache-Control "max-age=15778463" always; add_header X-Content-Type-Options "nosniff" always; add_header X-Frame-Options "SAMEORIGIN" always; add_header X-XSS-Protection "1; mode=block" always; add_header X-Robots-Tag "none" always; add_header X-Download-Options "noopen" always; add_header X-Permitted-Cross-Domain-Policies "none" always; access_log off; } location ~ /nextcloud/.*\.(?:svg|gif|png|html|ttf|woff|ico|jpg|jpeg|map| json) { try_files $uri /nextcloud/index.php$uri$is_args$args; add_header Cache-Control "public, max-age=7200" always; access_log off; } } }
Kood:
sudo systemctl reload nginx
HTML kood:
https://example.com/nextcloud
- Looge administraatori konto ja parool
- Jäta andmete kaust vaikeseadeks
- Valige MySQL/MariaDB
- Sisestage andmebaasi kasutajanimi
- Sisestage andmebaasi kasutaja parool
- Sisestage andmebaasi nimi
- Jätke andmebaasi host kohalikuks hostiks, kui Nextcloud ja andmebaasiserver on samas hostis.
- Klõpsake nuppu Lõpeta seadistamine
----
See postitus näitas teile, kuidas seadistada Nextcloud Ubuntu Linuxis koos Nginxi ja Let’s Encryptiga. Kui leiate ülaltoodus mingi vea või parema lahenduse, siis võtke kindlasti meiega ühendust.
NB! Kindlasti üle vaadata failisisude treppimine, kuna antud foorum lükkab kogu koodi paremasse serva.