- Nextcloud 目前在
my-domain.dev/nextcloud
. - 我想把它送到
cloud.my-domain.dev
。 - 我已经设置了一个 A 记录
cloud.my-domain.dev
来指向我的服务器的 IP 地址。 - 坐在我的旁边
/var/www/nextcloud
,我还有一个/var/www/my-domain.dev
我的主站点,我已经设置它使用 Let's-Encrypt 使用 HTTPS。 - 我正在使用服务器版本:Apache/2.4.41 (Ubuntu)。
现在我需要设置虚拟主机一起玩。我假设我必须将 nextcloud.conf 转换为位于虚拟主机中,也许在不同的端口下?我该如何进行?
nextcloud.conf由 nextcloud 推荐。
Alias /nextcloud "/var/www/nextcloud/"
<Directory /var/www/nextcloud/>
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/nextcloud
SetEnv HTTP_HOME /var/www/nextcloud
</Directory>
我的域.dev.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName my-domain.dev
ServerAlias www.my-domain.dev
DocumentRoot /var/www/my-domain.dev
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
什么对我有用:
安德鲁舒尔曼的回答几乎对我有用,我只需要做一些小改动:
- 删除“要求所有授予”。
- 将“AllowOverride All”和“Options FollowSymLinks MultiViews”移动到目录标签中。
有人可以解释为什么这些步骤是必要的吗?
谢谢安德鲁!
nextcloud.conf:
1 <VirtualHost *:80>
2 ServerAdmin [email protected]
3 ServerName cloud.b-t.dev
4 DocumentRoot /var/www/nextcloud
5
6 #ErrorLog ${APACHE_LOG_DIR}/error.log
7 #CustomLog ${APACHE_LOG_DIR}/access.log combined
8
9 <Directory "/var/www/nextcloud">
10 AllowOverride All
11 Options FollowSymLinks MultiViews
12 </Directory>
13
14 #Satisfy Any
15
16 <IfModule mod_dav.c>
17 Dav off
18 </IfModule>
19
20 SetEnv HOME /var/www/nextcloud
21 SetEnv HTTP_HOME /var/www/nextcloud
22 </VirtualHost>