在Nginx(LEMP)上运行ownCloud 5.0在Debian Wheezy上
本教程将展示如何在安装了nginx而不是Apache的Debian Wheezy系统上安装和运行ownCloud 5.0(LEMP = L inux + nginx(发音为“ e ngine x”)+ M ySQL + P HP)。 nginx是一个HTTP服务器,比Apache使用的资源少得多,并且提供了更快的网页,特别是静态文件。
我不会保证这将为您工作!
1初步说明
我想在一个名为www.example.com
/ example.com
的vhost中安装ownCloud,其中包含文档根/var/www/www.example.com/web
。
您应该有一个工作的LEMP安装,如本教程所示:
2安装APC和一些其他要求
APC是一个免费开放的PHP操作码cacher,用于缓存和优化PHP中间代码。 它类似于其他PHP操作码cacher,如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 reload
3安装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/
建议使用作为用户www-data
和group www-data
运行的nginx守护进程将文档根和ownCloud文件写入:
chown -R www-data:www-data /var/www/www.example.com/web
如果还没有为ownCloud创建MySQL数据库(包括MySQL ownCloud用户),可以按照以下方式进行操作(在本示例中,我将数据库命名为owncloud
,用户名为owncloud_admin
,密码为owncloud_admin_password
):
mysqladmin -u root -p create owncloud
mysql -u root -p
GRANT 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;
接下来,我们在/ etc / nginx / sites-available /
目录中为www.example.com
vhost创建一个nginx vhost配置,如下所示:
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; } # Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac). location ~ /\. { deny all; access_log off; log_not_found off; } client_max_body_size 10G; # set max upload size 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; } } |
要启用vhost,我们从/ 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
现在,我们可以通过访问http://www.example.com启动基于Web的ownCloud安装程序
- 为管理员帐户填写用户名和密码,然后单击高级
。 然后向下滚动...
...并点击MySQL
。 这将使数据库详细信息的输入字段出现。 填写您的数据库详细信息,然后单击完成设置
:
如果一切顺利,您应该看到欢迎来到ownCloud
消息:
安装完成后,您可以开始使用ownCloud:
4链接
- ownCloud: http : //owncloud.org/
- nginx: http : //nginx.org/
- nginx维基: http : //wiki.nginx.org/
- Debian: http : //www.debian.org/