ownCloud установка · 3 min read · Jan 23, 2026
Запуск ownCloud 5.0 на Nginx (LEMP) на Debian Wheezy
Запуск ownCloud 5.0 на Nginx (LEMP) на Debian Wheezy
Этот учебник показывает, как вы можете установить и запустить ownCloud 5.0 на системе Debian Wheezy, на которой установлен nginx вместо Apache (LEMP = L инукс + nginx (произносится “ e ngine x”) + M ySQL + P HP). nginx — это HTTP-сервер, который использует гораздо меньше ресурсов, чем Apache, и загружает страницы намного быстрее, особенно статические файлы.
Я не даю никаких гарантий, что это сработает для вас!
1 Предварительная заметка
Я хочу установить ownCloud в виртуальном хосте с именем www.example.com / example.com здесь с корнем документа /var/www/www.example.com/web.
У вас должна быть рабочая установка LEMP, как показано в этом учебнике:
- Установка Nginx с поддержкой PHP5 (и PHP-FPM) и MySQL на Debian Wheezy
2 Установка APC и нескольких других требований
APC — это бесплатный и открытый кэш PHP opcode для кэширования и оптимизации промежуточного кода PHP. Он похож на другие кэши PHP opcode, такие как eAccelerator и XCache. Настоятельно рекомендуется установить один из них, чтобы ускорить вашу PHP-страницу.
APC можно установить следующим образом:
apt-get install php-apcУстановите несколько других требований:
apt-get install php-xml-parser php5-intl php5-sqlite php5-mysql smbclient curl libcurl3 php5-curlПерезагрузите PHP-FPM следующим образом:
/etc/init.d/php5-fpm reload3 Установка ownCloud
Корень документа моего веб-сайта www.example.com — это /var/www/www.example.com/web — если он не существует, создайте его следующим образом:
mkdir -p /var/www/www.example.com/webЗатем загрузите ownCloud с веб-сайта ownCloud на ваш сервер, распакуйте его и поместите в корень документа:
cd /tmp
wget http://download.owncloud.org/community/owncloud-5.0.13.tar.bz2
tar xvfj owncloud-5.0.13.tar.bz2
rm -f owncloud-5.0.13.tar.bz2
cd owncloud
mv * .htaccess /var/www/www.example.com/web/
Рекомендуется сделать корень документа и файлы ownCloud в нем доступными для записи демоном nginx, который работает от имени пользователя www-data и группы www-data:
chown -R www-data:www-data /var/www/www.example.com/webЕсли вы еще не создали базу данных MySQL для ownCloud (включая пользователя MySQL ownCloud), вы можете сделать это следующим образом (в этом примере я называю базу данных owncloud, а пользователь называется owncloud_admin, и его пароль owncloud_admin_password):
mysqladmin -u root -p create owncloudmysql -u root -pGRANT ALL PRIVILEGES ON owncloud. TO ‘owncloud_admin’@’localhost’ IDENTIFIED BY ‘owncloud_admin_password’;
GRANT ALL PRIVILEGES ON owncloud. TO ‘owncloud_admin’@’localhost.localdomain’ IDENTIFIED BY ‘owncloud_admin_password’;
FLUSH PRIVILEGES;quit;Затем мы создаем конфигурацию виртуального хоста nginx для нашего виртуального хоста www.example.com в каталоге /etc/nginx/sites-available/ следующим образом:
vi /etc/nginx/sites-available/www.example.com.vhost| server { listen 80; server_name www.example.com example.com; root /var/www/www.example.com/web; if ($http_host != "www.example.com") { rewrite ^ http://www.example.com$request_uri permanent; } index index.php index.html; location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } # Запретить все попытки доступа к скрытым файлам, таким как .htaccess, .htpasswd, .DS_Store (Mac). location ~ \. { deny all; access_log off; log_not_found off; } client_max_body_size 10G; # установить максимальный размер загрузки rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect; rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect; rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect; rewrite ^/apps/calendar/caldav.php /remote.php/caldav/ last; rewrite ^/apps/contacts/carddav.php /remote.php/carddav/ last; rewrite ^/apps/([^/]*)/(.*\.(css|php))$ /index.php?app=$1&getfile=$2 last; rewrite ^/remote/(.*) /remote.php last; error_page 403 = /core/templates/403.php; error_page 404 = /core/templates/404.php; location ~ ^/(data|config|\.ht|db_structure\.xml|README) { deny all; } location / { rewrite ^/.well-known/host-meta /public.php?service=host-meta last; rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last; rewrite ^/.well-known/carddav /remote.php/carddav/ redirect; rewrite ^/.well-known/caldav /remote.php/caldav/ redirect; rewrite ^(/core/doc/[^\/]+/)$ $1/index.html; try_files $uri $uri/ /index.php$is_args$args; } location ~ ^(.+?\.php)(/.*)?$ { try_files $1 =404; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$1; fastcgi_param PATH_INFO $2; fastcgi_param HTTPS $https; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_intercept_errors on; fastcgi_index index.php; fastcgi_buffers 64 4K; } location ~* ^.+\.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ { expires 30d; access_log off; } } |
Чтобы включить виртуальный хост, мы создаем символическую ссылку на него из каталога /etc/nginx/sites-enabled/:
cd /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/www.example.com.vhost www.example.com.vhost
Перезагрузите nginx, чтобы изменения вступили в силу:
/etc/init.d/nginx reloadТеперь мы можем запустить веб-установщик ownCloud, перейдя по адресу http://www.example.com - введите имя пользователя и пароль для учетной записи администратора и нажмите на “Дополнительно”. Затем прокрутите вниз…

… и нажмите на MySQL. Это сделает поля ввода для данных базы данных видимыми. Заполните данные вашей базы данных и нажмите на “Завершить настройку”:

Если все пройдет хорошо, вы должны увидеть сообщение “Добро пожаловать в ownCloud”:

Установка завершена, и вы можете начать использовать ownCloud:

4 Ссылки
- ownCloud: http://owncloud.org/
- nginx: http://nginx.org/
- Вики nginx: http://wiki.nginx.org/
- Debian: http://www.debian.org/
Get new posts in your inbox
No spam. Unsubscribe anytime.