apache 配置用户级目录

时间:2021-09-03 04:46:22

如果你只需要在用户目录下使用apache的话,还有一个最简单的方式,直接将 httpd.conf文件下的

DocumentRoot "/Library/WebServer/Documents"
<Directory "/Library/WebServer/Documents">

  改成你的用户目录下的 Sites 路径就好了,如下:

DocumentRoot "/Users/username/Sites"
<Directory "/Users/username/Sites">

  这样设置之后,之前的 /Library/WebServer/Documents 就没法访问了。

如果,你想保留两者,甚至还想拥有虚拟主机配置的话,那么接下来的文章会对你有用的。

配置用户级目录

1、在username(约定本文出现的username为用户名)下新建一个文件夹叫 Sites (只能叫这个名字,不能是其他的,注意大小写)

2、打开 /etc/apache2/httpd.conf 文件,并去掉下面字符串前面的 # 号。

# 开启用户级目录
LoadModule userdir_module libexec/apache2/mod_userdir.so # 开启用户级目录配置文件
Include /private/etc/apache2/extra/httpd-userdir.conf

  

3、打开 /etc/apache2/extra/httpd-userdir.conf 文件,去掉下面字符串前面的 #号。

# 引入用户目录级配置文件
Include /private/etc/apache2/users/*.conf

  

4、配置用户级目录的 .conf ,该文件的地址是 /etc/apache2/users/username.conf ,如果文件不存在,那么就创建一个。然后打开 username.conf 文件,在文件里面添加如下配置:

<Directory "/Users/username/Sites/">
Options Indexes MultiViews
AllowOverride None
Require all granted
</Directory>

  

5、保存所有改动的文件,并重启 apache,然后在浏览中打开 127.0.0.1/~username/ ,该链接默认打开的是用户目录下的 Sites 目录里面的 index 文件。如果出现如下提示,则说明 username.conf 配置文件出了问题。

Not Found
The requested URL /~username/ was not found on this server.