在Debian、Ubuntu及其派生程序上,Apache安装了一个有用的配置,所以您所要做的就是创建一个/etc/apache2/sites-available/nextcloud.conf
文件中包含以下行的文件,替换目录和其他你自己的目录:
Alias /nextcloud "/var/www/nextcloud/"<Directory /var/www/nextcloud/> Require all granted AllowOverride All Options FollowSymLinks MultiViews <IfModule mod_dav.c> Dav off </IfModule></Directory>
然后启用新创建的站点:
a2ensite nextcloud.conf
在CentOS/RHEL上,创建一个虚拟主机/etc/httpd/conf.d/nextcloud.conf
并添加以下内容:
<VirtualHost *:80> DocumentRoot /var/www/nextcloud/ ServerName your.server.com <Directory /var/www/nextcloud/> Require all granted AllowOverride All Options FollowSymLinks MultiViews <IfModule mod_dav.c> Dav off </IfModule> </Directory></VirtualHost>
要使NextCloud正常工作,我们需要模块mod_rewrite
。通过运行:
a2enmod rewrite
其他推荐模块包括mod_headers
, mod_env
, mod_dir
和mod_mime
:
a2enmod headersa2enmod enva2enmod dira2enmod mime
如果你在跑步mod_fcgi
而不是标准mod_php
还使:
a2enmod setenvif
您必须禁用NextCloud的任何服务器配置身份验证,因为它在内部对DAV服务使用基本身份验证。如果您打开了父文件夹上的身份验证(例如通过AuthType Basic
指令),您可以专门为NextCloud条目关闭身份验证。在上面的示例配置文件之后,在<Directory>
部分:
Satisfy Any
在使用SSL时,要特别注意ServerName。您应该在服务器配置中以及证书的CommonName字段中指定一个。如果您希望您的NextCloud可以通过Internet访问,那么将它们都设置为要访问NextCloud服务器的域。
现在重新启动Apache:
service apache2 restart
如果您在子目录中运行NextCloud,并且希望使用CalDAV或CardDAV客户端,请确保配置了正确的服务发现URL。