当前位置: 首页 > news >正文

Linux/centos上如何配置管理Web服务器?

Linux/centos上如何配置管理Web服务器?

  • 1 Web简单了解
  • 2 关于Apache
  • 3 如何安装Apache服务器?
    • 3.1 Apache服务安装
    • 3.2 httpd服务的基本操作
  • 4 如何配置Apache服务器?
    • 4.1 关于httpd.conf配置
    • 4.2 常用指令
  • 5 简单实例

1 Web简单了解

  • Web服务器称为WWW服务器,主要是提供上网功能;
  • 常见的Web服务器有:Microsoft IISIBM WebSphereApacheTomcat等;
  • 本文主要以Apache服务器为例了解一些Linux/centos上如何配置管理Web服务器。

2 关于Apache

  • Apache是一种开源的Web服务器软件;
  • 具有跨平台特性,支持UnixLinuxBSD等操作系统;
  • 支持静态和动态内容;
  • 对于模块化支持;
  • 支持SSL和虚拟主机;
  • 具有完整的日志功能;
  • 支持用户认证机制等。

3 如何安装Apache服务器?

3.1 Apache服务安装

  • 先检查系统上是否已经安装了Apache服务,如下:
rpm -qa | grep httpd
  • 我的是已经安装了如下:
    在这里插入图片描述
  • 如果没有安装,可以使用以下命令安装:
yum -y install httpd

3.2 httpd服务的基本操作

  • 查看httpd服务的运行状态:
systemctl status httpd.service
  • 如下显示,我的还没有启动:
    在这里插入图片描述
  • 启动httpd服务:
systemctl start httpd.service
  • 启动后如下显示:
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# systemctl status httpd.service
● httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)Active: active (running) since Wed 2023-11-08 17:53:21 CST; 2s agoDocs: man:httpd(8)man:apachectl(8)Main PID: 5953 (httpd)Status: "Processing requests..."Tasks: 9CGroup: /system.slice/httpd.service├─5953 /usr/sbin/httpd -DFOREGROUND├─5954 /usr/libexec/nss_pcache 6 off├─5956 /usr/sbin/httpd -DFOREGROUND├─5958 /usr/sbin/httpd -DFOREGROUND├─5959 /usr/sbin/httpd -DFOREGROUND├─5960 /usr/sbin/httpd -DFOREGROUND├─5961 /usr/sbin/httpd -DFOREGROUND└─5962 /usr/sbin/httpd -DFOREGROUNDNov 08 17:53:20 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
Nov 08 17:53:20 localhost.localdomain httpd[5953]: AH00558: httpd: Could not reliably determine the server's fully qualified domain na...message
Nov 08 17:53:21 localhost.localdomain systemd[1]: Started The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.
  • 停止httpd服务:
systemctl stop httpd.service
  • 重启httpd服务:
systemctl restart httpd.service
  • 设置开机自启动:
systemctl enable httpd.service
  • 查看设置自启动是否成功:
systemctl list-unit-files | grep httpd
  • 如下显示则为设置成功了:
    在这里插入图片描述

4 如何配置Apache服务器?

4.1 关于httpd.conf配置

  • Apache服务的配置文件为httpd.conf,文件在`/etc/httpd/conf/下:
    在这里插入图片描述
  • httpd.conf文件内容说明:
内容说明
#ServerRoot全局环境设置
#Main serve rconfiguration主服务器设置
虚拟主机设置

4.2 常用指令

指令说明示例
ServerName设置Apache服务器的主机名和端口号ServerName www.noamanelson.com 80
ServerRoot设置Apache服务器的根目录,包括conf、logs、modules等子目录ServerRoot /etc/httpd
Listen设置Apache服务器的监听端口,默认监听80,一般在监听非80时会设置Listen 8088
DocumentRoot设置Apache提供的HTML文档根目录 ,默认为/var/www/htmlDocumentRoot /www/myweb
Directory指定Apache服务器根目录的访问权限和方式<Directory "/var/www">AllowOverride None Require all granted </Directory >
DirectoryIndex设置Apache服务器网站的主文件,通常为index.htmlDirectoryIndex index.html
VirtualHost设置特定虚拟主机<VirtualHost 192.168.1.7> DocumentRoot /www/myweb ServerName noamanelson.com </VirtualHost>
ServerAdmin设置管理员邮箱ServerAdmin admin@noamanelson.com
TimeOut设置接收和发送数据时的超时时间TimeOut 100
ErrorLog指定Apache服务器使用的错误日志文件ErrorLog logs/error_log
CustomLog指定Apache服务器使用的访问日志/
Include其他配置文件/

5 简单实例

  • 主要目标是配置个人Web站点;
  • 建用户NoamaNelson,修改权限,并建立目录public_html:
    在这里插入图片描述
useradd NoamaNelson
mkdir /home/NoamaNelson/public_html
chmod +711 /home/NoamaNelson/
chmod +755 /home/NoamaNelson/public_html/
  • public_html下建立网页文件index,html:
vim /home/NoamaNelson/public_html/index.html
Welcome everyone,
This is my Web~~~
  • 配置/etc/httpd/conf.d/userdir.conf文件:
<IfModule mod_userdir.c>#UserDir disabledUserDir public_html
</IfModule><Directory "/home/*/public_html">AllowOverride FileInfo AuthConfig Limit Indexes#Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExecOptions NoneRequire method GET POST OPTIONS
</Directory>Require method GET POST OPTIONS
  • 保存以上文件,重启服务器,关闭防火墙,将Selinux设置为Permissive
    在这里插入图片描述
systemctl start httpd
systemctl stop firewalld.service
setenforce 0
getenforce
  • 在浏览器中输入服务ip/ ~NoamaNelson/即可打开NoamaNelson的个人主页,比如我的是如下:
    在这里插入图片描述
http://172.28.18.146/~NoamaNelson/

相关文章:

  • compile: version “go1.19“ does not match go tool version “go1.18.1“
  • 【狂神说Java】Nginx详解
  • Nacos热更新
  • 学习c#的第四天
  • 深度解剖Linux权限的概念
  • 关于session的不断变化问题
  • Python:使用marshmallow实现Python数据序列化、反序列化、数据验证
  • 智能一体化管网水位监测仪怎么样?
  • Wireshark抓包(网络分析)工具
  • 机器学习——朴素贝叶斯
  • 利用 Google Artifact Repository 构建docker 镜像仓库
  • C语言左移与右移学习
  • 由浅入深学习统计学 - 常用统计图形学习
  • Stream流的groupingBy
  • 100天精通风控建模(原理+Python实现)——第3天:风控建模中如何处理缺失值?
  • 【挥舞JS】JS实现继承,封装一个extends方法
  • Docker: 容器互访的三种方式
  • IOS评论框不贴底(ios12新bug)
  • Java比较器对数组,集合排序
  • Java编程基础24——递归练习
  • Java面向对象及其三大特征
  • Js基础知识(四) - js运行原理与机制
  • Phpstorm怎样批量删除空行?
  • quasar-framework cnodejs社区
  • Spring Boot快速入门(一):Hello Spring Boot
  • vue-router 实现分析
  • 不上全站https的网站你们就等着被恶心死吧
  • 初探 Vue 生命周期和钩子函数
  • 对象管理器(defineProperty)学习笔记
  • 后端_ThinkPHP5
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 使用SAX解析XML
  • 一道面试题引发的“血案”
  • 一些关于Rust在2019年的思考
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • ​中南建设2022年半年报“韧”字当头,经营性现金流持续为正​
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)
  • (机器学习-深度学习快速入门)第一章第一节:Python环境和数据分析
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • (轉貼) UML中文FAQ (OO) (UML)
  • *上位机的定义
  • .NET Core 2.1路线图
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .net 打包工具_pyinstaller打包的exe太大?你需要站在巨人的肩膀上-VC++才是王道
  • .Net 中Partitioner static与dynamic的性能对比
  • .netcore 获取appsettings
  • .NET下的多线程编程—1-线程机制概述
  • .project文件
  • /proc/interrupts 和 /proc/stat 查看中断的情况
  • /proc/stat文件详解(翻译)
  • @kafkalistener消费不到消息_消息队列对战之RabbitMq 大战 kafka
  • [bzoj 3124][sdoi 2013 省选] 直径
  • [cogs2652]秘术「天文密葬法」