首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将nextcloud移动到apache VirtualHost块中作为子域使用?

将nextcloud移动到apache VirtualHost块中作为子域使用?
EN

Server Fault用户
提问于 2020-12-07 22:43:59
回答 1查看 3.5K关注 0票数 1
  • Nextcloud目前正在my-domain.dev/nextcloud上提供服务。
  • 我想在cloud.my-domain.dev上买。
  • 我已经为cloud.my-domain.dev建立了一个指向服务器IP地址的A记录。
  • 坐在我的/var/www/nextcloud旁边,我还拥有一个/var/www/my-domain.dev,这是我设置的使用HTTPS的主要站点,使用的是“让我们加密”。
  • 我使用的是服务器版本: Apache/2.4.41 (Ubuntu)。

Now,我需要设置vhost来一起玩。我假设我必须将nextcloud.conf转换成一个虚拟主机,也许在另一个端口下?如何进行?

nextcloud.conf为下云推荐的.

代码语言:javascript
复制
Alias /nextcloud "/var/www/nextcloud/"


  Require all granted
  AllowOverride All
  Options FollowSymLinks MultiViews

  
    Dav off
      

  SetEnv HOME /var/www/nextcloud
  SetEnv HTTP_HOME /var/www/nextcloud

my-domain.dev.conf

代码语言:javascript
复制
    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

WHAT为我工作:

安德鲁·舒尔曼的回答对我来说几乎奏效了,我只需要做一些小小的改变:

  • 删除“要求所有许可”。
  • 将"AllowOverride All“和"Options FollowSymLinks MultiViews”移到目录标记中。

有人能解释一下为什么这些步骤是必要的吗?

谢谢安德鲁!

代码语言:javascript
复制
nextcloud.conf:
  1 
  2         ServerAdmin webmaster@b-t.dev
  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         
 10                 AllowOverride All
 11                 Options FollowSymLinks MultiViews
 12         
 13
 14         #Satisfy Any
 15
 16         
 17                 Dav off
 18         
 19
 20         SetEnv HOME /var/www/nextcloud
 21         SetEnv HTTP_HOME /var/www/nextcloud
 22 
EN

回答 1

Server Fault用户

回答已采纳

发布于 2020-12-08 02:16:56

您只需要添加一个新的VirtualHost定义,而不是别名和目录指令:

代码语言:javascript
复制
  ServerAdmin webmaster@localhost
  ServerName cloud.my-domain.dev
  DocumentRoot /var/www/nextcloud

  Require all granted
  AllowOverride All
  Options FollowSymLinks MultiViews

  
    Dav off
      

  SetEnv HOME /var/www/nextcloud
  SetEnv HTTP_HOME /var/www/nextcloud

两个虚拟主机都可以在端口80上运行。这就是基于名称的虚拟主机的工作原理,它允许您在同一个IP地址和端口上运行多个主机。Apache匹配客户端针对ServerName和ServerAlias指令发送的主机头的值,以确定要为它们服务的虚拟主机。

您应该阅读Apache虚拟主机文档,特别是关于基于名称的虚拟主机的部分。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1045353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档