首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >移动/var/www/ to /srv/www/ on Fedora 16

问移动/var/www/ to /srv/www/ on Fedora 16
EN

Unix & Linux用户
提问于 2012-02-20 02:54:00
回答 3查看 3.4K关注 0票数 3

我正在学习如何配置linux、apache、php、mysql。

我遵循以下步骤,如何在/var/www/下面的文件和文件夹上为root设置权限:www-dev

现在,我想知道如何移动dir /var/www/,并且假设我设置的权限将保持不变。我非常肯定,我将不得不编辑一些apache配置,让apache知道它的目录已经改变了位置。

我不知道mysql在哪里,我还假设php是apache的一个模块,因此它应该在/var/www/

我只是试着试着从总体上了解linux,以及如何配置一个简单的web服务器。

目前,除了我设置的权限之外,我的配置是默认的。

代码语言:javascript
复制
# yum install httpd
# yum install mysql mysql-server
# yum install php php-mysql
EN

回答 3

Unix & Linux用户

回答已采纳

发布于 2012-02-20 03:01:13

用安全的方法!

代码语言:javascript
复制
cp -pr /var/www /srv/www

它将递归地复制/var/www的内容(-r开关),并保留权限(-p开关)到新文件夹/srv/www。

你需要改变

代码语言:javascript
复制
DocumentRoot 

设置在您的网站或虚拟主机配置文件。

对于您的情况,您不必担心php模块或mysql模块。

票数 7
EN

Unix & Linux用户

发布于 2012-02-21 02:22:54

如果/var和/srv位于同一个文件系统上,那么您可以原子地将www目录从一个移到另一个:

代码语言:javascript
复制
mv /var/www /srv/

当您这样做时,任何在www下打开文件的进程都将保持该文件处于打开状态。

如果/var和/srv位于不同的文件系统上,那么在移动之前最好停止使用www下文件的服务,因为会有一个转换期间,在此期间文件将被复制并删除。

在这种情况下,如果您希望最小化停机时间:

  1. 复制文件,尊重权限: cp -a /var/www /srv/
  2. 编辑配置文件以指向/srv/www而不是/var/www。
  3. 从/var/www下删除文件。

如果复制然后删除,将有一个过渡时期,在此期间存在两个文件副本。因此,您必须确保在过渡期间不会在www目录下写入任何内容;否则,两个副本将脱离同步,一些数据可能会丢失。

看看需要改变什么:

  • 在/etc下,或者在/var/www本身下搜索文件,查找对/var/www的引用: grep -r ' /var/www‘/etc /var/www
  • 查找引用/var/www的任何绝对符号链接。查找/etc /var/www -lname '/var/www*‘
票数 2
EN

Unix & Linux用户

发布于 2012-02-20 08:33:58

您确实需要更改DocumentRoot,但也可以这样做:

代码语言:javascript
复制
ln -si /var/www /srv/www

这将创建一个从第一个到第二个的sym链接。或者像kaji所说的那样,做相反的操作,但是将/var/www与/srv/www --只交换上面命令中的两个参数。

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

https://unix.stackexchange.com/questions/32163

复制
相关文章

相似问题

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