|
Rozmiar: 2436
Komentarz: + konfiguracja apache; źródła w sieci internet
|
Rozmiar: 7177
Komentarz: * aktualizacja 2016.10.05: ustawienia w systemie, oraz po stronie OC
|
| Usunięcia zostały oznaczone w ten sposób. | Dodatki zostały oznaczone w ten sposób. |
| Linia 7: | Linia 7: |
| Poniżej przepis, jak zainstalować oraz skonfigurować ownCloud na serwerz | Poniżej przepis, jak zainstalować oraz skonfigurować ownCloud na serwerze. |
| Linia 10: | Linia 10: |
| {{{#!shell numbers=off portupgrade -N www/owncloud # albo z wykorzystaniem pkg # pkg install www/owncloud |
Z wykorzystaniem własnego [[PoudriereBinaryPkg|repozytroium pakietów]] wykonujemy instalację: {{{#!highlight bash numbers=off pkg install -y www/owncloud |
| Linia 20: | Linia 17: |
| {{{ | {{{#!highlight apache numbers=off |
| Linia 25: | Linia 22: |
| Order allow,deny Allow from all # for apache2.4 # |
|
| Linia 31: | Linia 23: |
# for apache 2.2 # Satisfy Any |
<IfModule mod_expires.c> Header set cache-control: public ExpiresActive on ExpiresDefault "access plus 1 month" ExpiresByType text/html "access plus 1 hour" ExpiresByType application/rss+xml "access plus 1 hour" ExpiresByType image/png "access plus 3 month" ExpiresByType image/jpg "access plus 3 month" ExpiresByType image/jpeg "access plus 3 month" ExpiresByType video/ogg "access plus 3 month" ExpiresByType audio/ogg "access plus 3 month" ExpiresByType video/mp4 "access plus 3 month" ExpiresByType image/x-icon "access plus 1 year" ExpiresByType font/ttf "access plus 1 year" ExpiresByType image/svg+xml "access plus 1 year" </IfModule> <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript </IfModule> |
| Linia 43: | Linia 50: |
| # Alias /owncloud /usr/local/www/owncloud # AcceptPathInfo On |
Alias /owncloud /usr/local/www/owncloud AcceptPathInfo On |
| Linia 47: | Linia 54: |
| {{{ | {{{#!highlight apache numbers=off |
| Linia 58: | Linia 65: |
| {{{#!shell numbers=off | {{{#!highlight bash numbers=off |
| Linia 63: | Linia 70: |
| == Sprawdzenie uprawnień do config.php == Jeżeli po zalogowaniu wystąpi błąd "''zapisu do kaalogu config/''", to trzeba sprawdzić uprawnienia: {{{#!highlight bash numbers=off chown -R www:www /usr/local/www/owncloud/config/ }}} |
|
| Linia 64: | Linia 77: |
| Po zalogowaniu do panelu należy wpisać konfigurację bazy danych (nazwa, login, hasło) oraz na początku wpisać login oraz hasło administracyjne. | Po zalogowaniu do panelu należy wpisać konfigurację: 1. login administratora 1. hasło administratora 1. login do bazy danych 1. hasło do bazy danych 1. nazwa bazy danych 1. serwer bazy danych (domyślnie localhost, ale w przypadku [[UruchomienieJails|jaili]] trzeba odpowiednio poprawić |
| Linia 66: | Linia 85: |
| === Użytkownicy === | == Integralność danych == W trakcie instalacji [[FreshPorts:www/owncloud|owncloud]] modyfikowany jest plik '''core/Controller/LoginController.php''' i nie zgadza się suma kontrolna. Nie można zmieniać core/signature.json, ponieważ nie będzie się zgadzać i kontrola w ogóle nie przejdzie :-( == Modyfikacje w config.php == W przypadku udostępniania [[https://www.owncloud.org/|ownCloud|target="_blank"]] pod różnymi adresami, należy w pliku konfiguracyjnym zmodyfikować zmienną `trusted_domains`: {{{#!highlight php numbers=off $CONFIG = array ( # [...] 'trusted_domains' => array ( 0 => 'cloud.bsdserwis.com', 1 => 'cloud.codenix.pro', 2 => 'cloud.codenix.pl', ), # [...] ); }}} == crontab == W ustawieniach panelu administracyjnego należy ustawić wywoływanie zadań cron z crond. W tym celu należy utworzyć crontaba dla użytkownika ''www'': {{{#!highlight bash numbers=off # --- definicje zmiennych lokalnych ---------------------------------------- # NULL=/dev/null LOC_PREFIX=/usr/local SHELL=/bin/sh PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin HOME=/var/log LOC_PYTHON=/usr/local/bin/python2 DOW="`/bin/date +%w-%a`" # #minute hour mday month wday command # */15 * * * * ${LOC_PREFIX}/bin/php ${LOC_PREFIX}/www/owncloud/cron.php }}} == Powiadomienia mailowe == W celu wysyłania powiadomień mailowych należy wpisać dane w panelu administratora. Zostaną one zapisane w pliku `config.php` jako: {{{#!highlight php numbers=off $CONFIG = array ( # [...] 'mail_smtpmode' => 'smtp', 'mail_smtpauthtype' => 'LOGIN', 'mail_smtpauth' => 1, 'mail_from_address' => 'chmura', 'mail_domain' => 'bsdserwis.com', 'mail_smtphost' => 'localhost.bsdserwis.com', 'mail_smtpport' => '587', 'mail_smtpname' => '__user__', 'mail_smtppassword' => '__haslo__', ); }}} /!\ Należy przypisać adres nadawcy do istniejącej skrzynki mailowej. == Ustawienie w php.ini == W celu umożliwienia wysyłania większych plików (głównie upload) można ustawić następujące wartości w `/usr/local/etc/php.ini`: {{{#!highlight ini numbers=off # globalnie może być mniejszy, poprzez plik .htaccess ownCloud i tak ustawia poniższy limit memory_limit = 513M sys_temp_dir = /var/tmp/apache upload_tmp_dir = /var/tmp/apache upload_max_filesize = 5192M max_file_uploads = 20 # post_max_size >= $upload_max_filesize post_max_size = 5220M }}} == /usr/local/www/owncloud/.htaccess == W pliku '''.htaccess''' są wartości pomniejszone do 513M. Można zatem poprawić ustawienia i dostosować do własnych potrzeb: {{{#!highlight diff numbers=off --- .htaccess 2016-07-20 11:15:02.000000000 +0200 +++ .htaccess.new 2016-10-05 03:53:52.771228000 +0200 @@ -24,10 +24,11 @@ <FilesMatch "\.(css|js)$"> Header set Cache-Control "max-age=7200, public" </FilesMatch> + Header set X-Frame-Options "SAMEORIGIN" </IfModule> <IfModule mod_php5.c> - php_value upload_max_filesize 513M - php_value post_max_size 513M + php_value upload_max_filesize 2050M + php_value post_max_size 2075M php_value memory_limit 512M php_value mbstring.func_overload 0 php_value always_populate_raw_post_data -1 }}} = Użytkownicy = |
| Linia 73: | Linia 184: |
| 1. [[https://doc.owncloud.org/dokumentacja ownCloud|target="_blank"]] | 1. [[https://doc.owncloud.org/|dokumentacja ownCloud|target="_blank"]] |
Instalacja oraz konfiguracja ownCloud
Poniżej przepis, jak zainstalować oraz skonfigurować ownCloud na serwerze.
ports/pkg
Z wykorzystaniem własnego repozytroium pakietów wykonujemy instalację:
pkg install -y www/owncloud
Konfiguracja apache
Konfiguracja została dodana do repozytorium skryptów, ale zapisana ku pamięci:
# --- definicja katalog/ow ze stronkami -----------------------------
#
<Directory /usr/local/www/owncloud>
AllowOverride All
Require all granted
<IfModule mod_expires.c>
Header set cache-control: public
ExpiresActive on
ExpiresDefault "access plus 1 month"
ExpiresByType text/html "access plus 1 hour"
ExpiresByType application/rss+xml "access plus 1 hour"
ExpiresByType image/png "access plus 3 month"
ExpiresByType image/jpg "access plus 3 month"
ExpiresByType image/jpeg "access plus 3 month"
ExpiresByType video/ogg "access plus 3 month"
ExpiresByType audio/ogg "access plus 3 month"
ExpiresByType video/mp4 "access plus 3 month"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresByType font/ttf "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
</IfModule>
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript
</IfModule>
</Directory>
# -------------------------------------------------------------------
#
# Konfiguracja dla wybranego VirtualHost lub konfiguracji globalnej
#
# -------------------------------------------------------------------
#
Alias /owncloud /usr/local/www/owncloud
AcceptPathInfo On
Zgodnie z dokumentacją ownCloud trzeba dodać następujące konfiguracje do apache:
<IfModule mod_headers.c>
Header merge X-Frame-Options SAMEORIGIN
Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains; preload"
Header merge X-Content-Type-Options nosniff
Header merge X-XSS-Protection "1; mode=block"
Header merge X-Robots-Tag none
</IfModule>
Utworzenie bazy danych
createuser -U pgsql -DEPS chmurek
createdb -U pgsql -O chmurek -E utf-8 cdnxcloud
Sprawdzenie uprawnień do config.php
Jeżeli po zalogowaniu wystąpi błąd "zapisu do kaalogu config/", to trzeba sprawdzić uprawnienia:
chown -R www:www /usr/local/www/owncloud/config/
Konfiguracja w panelu www
Po zalogowaniu do panelu należy wpisać konfigurację:
- login administratora
- hasło administratora
- login do bazy danych
- hasło do bazy danych
- nazwa bazy danych
serwer bazy danych (domyślnie localhost, ale w przypadku jaili trzeba odpowiednio poprawić
Integralność danych
W trakcie instalacji owncloud modyfikowany jest plik core/Controller/LoginController.php i nie zgadza się suma kontrolna. Nie można zmieniać core/signature.json, ponieważ nie będzie się zgadzać i kontrola w ogóle nie przejdzie
Modyfikacje w config.php
W przypadku udostępniania ownCloud pod różnymi adresami, należy w pliku konfiguracyjnym zmodyfikować zmienną trusted_domains:
$CONFIG = array (
# [...]
'trusted_domains' =>
array (
0 => 'cloud.bsdserwis.com',
1 => 'cloud.codenix.pro',
2 => 'cloud.codenix.pl',
),
# [...]
);
crontab
W ustawieniach panelu administracyjnego należy ustawić wywoływanie zadań cron z crond. W tym celu należy utworzyć crontaba dla użytkownika www:
# --- definicje zmiennych lokalnych ----------------------------------------
#
NULL=/dev/null
LOC_PREFIX=/usr/local
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin
HOME=/var/log
LOC_PYTHON=/usr/local/bin/python2
DOW="`/bin/date +%w-%a`"
#
#minute hour mday month wday command
#
*/15 * * * * ${LOC_PREFIX}/bin/php ${LOC_PREFIX}/www/owncloud/cron.php
Powiadomienia mailowe
W celu wysyłania powiadomień mailowych należy wpisać dane w panelu administratora. Zostaną one zapisane w pliku config.php jako:
$CONFIG = array (
# [...]
'mail_smtpmode' => 'smtp',
'mail_smtpauthtype' => 'LOGIN',
'mail_smtpauth' => 1,
'mail_from_address' => 'chmura',
'mail_domain' => 'bsdserwis.com',
'mail_smtphost' => 'localhost.bsdserwis.com',
'mail_smtpport' => '587',
'mail_smtpname' => '__user__',
'mail_smtppassword' => '__haslo__',
);
Należy przypisać adres nadawcy do istniejącej skrzynki mailowej.
Ustawienie w php.ini
W celu umożliwienia wysyłania większych plików (głównie upload) można ustawić następujące wartości w /usr/local/etc/php.ini:
# globalnie może być mniejszy, poprzez plik .htaccess ownCloud i tak ustawia poniższy limit
memory_limit = 513M
sys_temp_dir = /var/tmp/apache
upload_tmp_dir = /var/tmp/apache
upload_max_filesize = 5192M
max_file_uploads = 20
# post_max_size >= $upload_max_filesize
post_max_size = 5220M
/usr/local/www/owncloud/.htaccess
W pliku .htaccess są wartości pomniejszone do 513M. Można zatem poprawić ustawienia i dostosować do własnych potrzeb:
--- .htaccess 2016-07-20 11:15:02.000000000 +0200
+++ .htaccess.new 2016-10-05 03:53:52.771228000 +0200
@@ -24,10 +24,11 @@
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=7200, public"
</FilesMatch>
+ Header set X-Frame-Options "SAMEORIGIN"
</IfModule>
<IfModule mod_php5.c>
- php_value upload_max_filesize 513M
- php_value post_max_size 513M
+ php_value upload_max_filesize 2050M
+ php_value post_max_size 2075M
php_value memory_limit 512M
php_value mbstring.func_overload 0
php_value always_populate_raw_post_data -1
Użytkownicy
Każdy z użytkowników powinien mieć zdefiniowany adres email - będzie pomocny do codziennej pracy z ownCloud.
@@@@@@@@@@@@@@@@@@@@@@@@@@@ TODO @@@@@@@@@@@@@@@@@@@@@@@@@@@
Źródła w sieci internet
(c) 2004 - 2026 BSD Serwis Krzysztof Stryjek. W przypadku błędów, poprawek proszę kontaktować się z administratorem wiki.
