linux下使用Apache服务部署静态网站

linux下使用Apache服务部署静态网站

一、contos7下安装Apache

1、把光盘设备中的系统镜像挂载到/media/cdrom目录中

mkdir -p /media/cdrom(创建要挂载的目录)

mount /dev/cdrom /media/cdrom(把cdrom挂载到创建的目录中)

2、在/etc/yum.repos.d/中创建yum仓库的配置文件,配置文件名可以随意起,但是后缀一定是.repo,这里用的名字是rhel7.repo,在里面写入如下参数:

[rhel7]

name=rhel7

baseurl=file:///media/cdrom

enabled=1

gpgcheck=0

3、手动安装apache程序:

yum install httpd

4、启用httpd服务程序并将其加入到开机启动项中

systemctl start httpd(启动httpd服务程序)

systemctl enable httpd(加入到开机启动项中)

5、进入Firefox浏览器输入http://127.0.0.1可以看到apache默认界面

二、配置服务文件参数

服务目录:/etc/httpd

主配置文件:/etc/thhpd/conf/httpd.conf

网站数据目录:/var/www/html

访问日志:/var/log/httpd/access_log

错误日志:/var/log/httpd/error_log

三、新建一个网页替换掉apache默认页面

在/var/www/html目录中写入一个html文件即可替换,默认情况网站数据保存在/var/www/html中,下述操作更改为/home/wwwroot中:

1、建立网站数据的保存目录,并创建首页文件

mkdir /home/wwwroot

echo "new html" >index.html

2、打开httpd主配置文件修改参数

第119行修改为/home/wwwroot      #(定义网站保存数据的参数)

第124行修改为/home/wwwroot     #(定义目录权限参数)

3、重启后(systemctl restart httpd)发现没有反应,因为SELinux安全子系统默认为拦截,SELinux系统有三种配置模式,具体如下:

enforcing:强制启用安全策略模式,将拦截服务的不合法请求

permissive:遇到服务越权访问时,只发出警告不拦截

disabled:对于越权行为不警告也不拦截

4、使用getenforce命令可以获得当前SELinux服务的运行模式

[[email protected] conf]# getenforce

Enforcing

5、使用setenforce命令修改SELinux当前运行模式(0为禁用,1为启动),这种修改是临时的,重启系统后会失效

[[email protected] conf]# setenforce 0

[[email protected] conf]# getenforce

Permissive

6、再次刷新网页即可获得内容

semanage命令:用于管理SELinux的策略,格式为 semanage 选项 文件

比如,向新的网站数据目录中新添加一条SELinux安全上下文,让这个目录中所有文件都可以被httpd服务程序所访问到

[[email protected] conf]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot

[[email protected] conf]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/*

最后使用restorecon命令将设置好的SELinux安全上下文立即生效

restorecon -Rv /home/wwwroot/

 

三、个人用户主页功能

1、httpd服务程序中,默认没有开启个人用户主页功能,需要编辑vim /etc/httpd/conf.d/userdir.conf 配置文件把17行注释,把24行取消注释

2、在用户家目录中建立保存网站的目录及页面文件

mkdir public_html

echo "This is heyingjian's website" >public_html/index.html

chmod -Rf 755 /home/hyj

3、重启httpd服务,在浏览器中输入“127.0.0.1/~用户名”即可访问