在虚拟机上的关于Apache(阿帕奇)(2)开启个人用户主页功能

首先下载httpd服务

在这里我们主要谈一谈个人主用户页功能分为不加密和加密两种

不加密

先来建立几个用户,使用命令:useradd  bujiami

使用命令:   Passwd  bujiami  设置bujiami的用户的密码,用同样的方法在建立个用户jack

 用同样的方法再建立一个用户方便看效果

现在我们拥有三个用户

 接下来打开配置文件  输入命令: vi  /etc/httpd/conf.d/userdir.conf

 

改完之后来切换至普通用户bujiami的家目录(切换至bujiami下是为了接下来的操作所建立的文件属主和属组为bujiami,当然你也可以在root下建立最后再改变)

输入命令: su  -  bujiami

创建网站数据目录 public_html

输入命令: mkdir public_html

如果提示你权限不够, 我们切换至root用户给他添加权限

 输入:su root(或者exit:之前就是root用户的话)

cd   /home 

ls -al

chmod 777 bujiami          改完之后 ls -al查看下bujiami是否为 drwx rwx rwx权限

之后 再输入:su   -   bujiami    进入bujiami用户 

写首页内容

 接下来给予网站目录权限,使其能访问

 如果出现下面这个问题

 

这次报错并不是因为用户家的网站数据目录SELinux安全上下文没有设置了,而是因为SELinux默认就不允许Apache服务个人用户主页这项功能。

 我们可以查看并搜索所有与家目录有关的SELinux策略

输入命令:getsebool -a | grep home

 可以看到这个服务是关着的,我们把它打开(设置完之后我们再去看一下)(在root用户下操作)

输入命令:setsebool httpd_enable_homedirs=on

去浏览器搜索ip/~bujiami/

 

同样的操作切换至huangyao 进行修改

 

加密

没有密码验证,太不安全接下来加入密码试一试

首先我们使用htpasswd命令生成密码数据库(-c 参数用于第一次生成)

输入命令:  htpasswd  -c  /etc/httpd/passwd  bujiami

接下来编辑配置文件开启密码验证

输入命令:  vi  /etc/httpd/conf.d/userdir.conf

如图所示,这样配置   authname中是提示信息

配置完后重启一下服务

systemctl  restart httpd

他就会出现这个框

 输入用户名bujiami 和上面使用htpasswd命令生成密码数据库所设置的密码,

 

当然啦,我们只设置了bujiami用户密码,其他的用户不能登入个人主页的,可以再次设置

给huangyao加一个密码数据库 

输入   htpasswd   -c /etc/httpd/passwd  huangyao

改变配置文件,在后面加上huangyao用户

输入vi  /etc/httpd/conf.d/userdir.conf

 配置完后重启一下服务,配置完不重启服务,和没配置一样。记得重启下服务

systemctl  restart httpd

打开浏览器搜索所创建的两个网页,密码为 htpasswd   -c /etc/httpd/passwd  xxxxx(用户名)当时所创建的密码

原文地址:https://www.cnblogs.com/escwq/p/11782912.html