使用Apache服务部署静态网站

1.网站服务程序windows系统中默认Web服务程序是IIS(InternetInformationServices),这是一款图形化的网站管理工具,IIS程序不光能提供Web网站服务,还能

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

1. 网站服务程序

  windows系统中默认Web服务程序是IIS(Internet Information Services),这是一款图形化的网站管理工具,IIS程序不光能提供Web网站服务,还能够提供FTP、NMTP、SMTP等服务功能,但只能在Windows中使用。

  nginx—最初于2004年10月4日为俄罗斯知名门户站点而开发的,作为一款轻量级的网站服务软件,因其稳定性和丰富的功能而深受信赖,但最最最被认可的是低系统资源、占用内存少且开发能力强,目前国内如新浪、网易、腾讯等门户站均使用。

  Apache—由于其跨平台和安全性广泛被认可且拥有快速,可靠,简单的API扩展,目前拥有很高的Web服务软件市场占用率,全球使用最多的Web服务软件,开源、跨平台(可运行于Unix/linux/windwos中)

  支持基于IP或域名的虚拟主机

  支持多种方式的HTTP认证

  集成代理服务器模块

  安全Socket层(SSl)

  能够实时监视服务状态与定制日志

  多种模块的支持

  Tomcat—-属于清凉级的Web服务软件,一般用于开发和调试JSP代码,通常认为Tomcat是Apache的扩展程序

2. 安装Apache服务程序

  前面的博客https://www.cnblogs.com/xiaobingqianrui/p/9358689.html介绍了如何Yum和网卡的配置,在准备工作做好后:

  (1)yum install httpd

  (2)systemctl start httpd

  (3)systemctl enable httpd   // 设置为开机自动启动

  (4)打开浏览器http://127.0.0.1进行测试

3. 配置服务文件参数

  服务目录: /etc/httpd

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

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

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

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

  配置文件相关参数:

  ServerRoot: 服务目录

  ServerAdmin: 管理员邮箱

  User: 运行服务用户

  Group: 运行服务的用户组

  serverName: 网站服务器的域名

  DocumentRoot: 网站数据目录

  Listen: 监听的IP地址与端口

  DirectoryIndex: 默认的索引页面

  ErrorLog: 错误日志文件

  CustomLog: 访问日志文件

4. 强制访问控制安全子系统

  使用Apache服务部署静态网站

  SELinux全称为Security-Enhanced Linux是美国国家安全局在Linux社区帮助下开发的一个强制访问控制的安全子系统,SELinux属于MAC强制访问控制(Mandatory),即让系统中的各个服务进程都收到约束,即仅能访问到所需要的文件

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

  permissive:遇到服务越权访问只会发出警告而不强制拦截

  disable:对于越权的行为不警告,也不拦截

使用Apache服务部署静态网站

使用Apache服务部署静态网站  

  SELinux安全策略包括域和安全上下文:

  SELinux域:对进程资源进行限制(参看方式:ps -Z)

  SELinux安全上下文:对系统资源进行限制(查看方式:ls -Z)

使用Apache服务部署静态网站

  semanage命令用于查询与修改SELinux的安全上下文,格式为semanage [选项] [文件]

  -l:查询

  -a:增加

  -m:修改

  -d:删除

  restorecon命令用于恢复SELinux文件安全上下文:restorecon [选项] [文件]

  -i:忽略不存在的文件

  -e: 排除目录

  -R: 递归目录(针对目录使用)

  -v:显示详细的过程

  -F:强制恢复

  更多详细参数参考:http://man.linuxde.net/semanage

5. 虚拟网站主机功能(基于IP)

(1)使用nmtui命令为网卡添加多个IP地址(192.168.10.10/20/30),当用户访问不同IP地址时显示不同的网站页面

使用Apache服务部署静态网站

(2)重启网卡设备后ping检查是否配置正确

  systemctl start network

  若start network失败,可以使用 cat /var/log/messages | grep network进行查看日志消息

  ping 192.168.10.10

使用Apache服务部署静态网站

(3)分别创建网站数据目录,针对不同的ip

mkdir -p /home/wwwroot/10
mkdir -p /home/wwwroot/20
mkdir -p /home/wwwroot/30

echo "ip:192.168.10.10" > /home/wwwroot/10/index.html
echo "ip:192.168.10.10" > /home/wwwroot/20/index.html
echo "ip:192.168.10.10" > /home/wwwroot/30/index.html

(4)在/etc/http/conf/httpd.conf配置文件中编辑基于IP的虚拟主机

<virtualhost 192.168.10.10>
DocumentRoot /home/wwwrppt/10
ServerName fate0729
<Directory>
AllowOverride None
Require all granted    
Order allow,deny
Allow from 192.168.10.0/24
</Directory>    
</virtualhost>

..............

(5)重启apache和加入到开机项

  systemctl restart httpd

  systemctl enable httpd

 (6)修改网络数据目录的SELinux安全上下文

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10/*

....................
// 立即恢复SELinux安全上下文
restorecon -Rv /home/wwwroot

(7)这样我们就可以输入网址进行测试了,若打开网页失败,可以关闭防火墙,iptables -F

使用Apache服务部署静态网站

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120101.html原文链接:https://javaforall.net

(0)
上一篇 2021年12月28日 下午8:00
下一篇 2021年12月28日 下午8:00


相关推荐

  • nodejs npm 卸载 + 重新安装「建议收藏」

    nodejsnpm卸载sudonpmuninstallnpm-gsudorm-rf/usr/local/lib/node/usr/local/lib/node_modules/var/db/receipts/org.nodejs.*sudorm-rf/usr/local/include/node/Users/$USER/.npmsudo…

    2022年4月10日
    796
  • 大端模式和小端模式详解

    大端模式和小端模式详解怎么去理解大端和小端 大端模式和小端是实际的字节顺序和存储的地址顺序对应关系的两种模式 总结如下 大端模式 低地址对应高字节小端模式 低地址对应低字节不管是大端还是小端模式 我们在读取和存储数据的时候一定都是从内存的低地址依次向高地址读取或写入 打个比方 我们定义一个数组 chararray 5 0 1 2 3 4 学习过 C 语言应该都知道 array 是这个数组存

    2026年3月18日
    2
  • vue上传图片,并回显图片

    vue上传图片,并回显图片vue 上传图片 并回显图片未用组件库 原生的 input 输入框提交这个看需求吧 用组件库的话 可以减少挺多代码的 但是这个的后端 因为只能单独提交照片 所以我就使用 js 了 逻辑绕绕的 inputv show false type file accept image change tirggerFile event ref input

    2026年2月9日
    2
  • widthstep

    widthstep简言之:image->widthStep=(int(image->width*image->nChannels+3)/4)*4,既图像宽度*图像通道数,再向上取最近的4的倍数,因为每行是按4的倍数分配内存的做直方图计算时要注意空的内存。灰度图的width和widthstep不相等。前者是表示图像的每行像素数,后者指表示存储一行像素需要的字节数。  在Op

    2022年6月12日
    46
  • c#实现图片gif去水印「建议收藏」

    做项目时候会遇到在网络上爬的源文件,png图片或者动画gif背景都带有水印,“百度出品”“不得转载”等等,这样出来的文件放在项目里面当做自己的资源来用肯定是不可以的,现在就来用lockbits替换背景的颜色,实现水印消除的目的。话不多述,上图:处理前:这是处理之前的图,其实底部的“baidu汉语“看着并不是很明显(仔细看),仍然需要把字体的背部水印去掉,这里开始用lockbits来去水印了。处理

    2022年4月9日
    138
  • PHP json_decode 出错

    PHP json_decode 出错json串中有时会包含json_decode解析不了的字符串,可以使用下面封装好的来处理。下载地址:Services_JSON

    2022年7月17日
    15

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号