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

Apache基础配置

一、Apache安装

# 安装apache
[root@webserver ~]# yum install httpd -y# 在防火墙中放行web服务
[root@webserver ~]# firewall-cmd --permanent --add-service=http
success
[root@webserver ~]# firewall-cmd --permanent --add-service=https
success# 开启服务
[root@webserver ~]# systemctl enable --now httpd.service# 生成默认测试页面文件
[root@webserver ~]# echo "web test" > /var/www/html/index.html# 测试
[root@webserver ~]# curl 192.168.121.21
web test

Apache的基本信息:

  • /etc/httpd/conf/:配置目录;
  • etc/http/conf.d:子配置目录;
  • /etc/httpd/conf/httpd.conf:主配置文件;
  • /lib/systemd/system/htpd.service:启动文件;
  • :80:默认端口;
  • /var/www/html:默认发布目录;
  • index.html:默认发布文件;

二、Apache的基本配置信息

(1)端口修改

# 修改配置文件
[root@webserver ~]# vim /etc/httpd/conf/httpd.conf
#Listen 80
Listen 8000# 刷新配置文件读取
[root@webserver ~]# systemctl reload httpd.service# 设定防火墙通过
[root@webserver ~]# firewall-cmd --permanent --add-port=8080/tcp
[root@webserver ~]# firewall-cmd --reload# 访问测试
[root@webserver ~]# curl 192.168.121.21:8000
web test

(2)默认发布目录

# 创建默认发布目录
[root@webserver ~]# mkdir -p /www/html# 修改配置文件
[root@webserver ~]# vim /etc/httpd/conf/httpd.con
DocumentRoot "/www/html"<Directory "/www/html">Require all granted
</Directory>[root@webserver ~]# echo "/www/html's page" > /www/html/index.html
[root@webserver ~]# systemctl reload httpd.service
[root@webserver ~]# curl 192.168.121.21:8000
/www/html's page

(3)默认发布文件

# 添加默认发布文件
[root@webserver ~]# echo "obboda.html" > /www/html/obboda.html# 将obboda.html设为index.html前,优先查询
[root@webserver ~]# vim /etc/httpd/conf/httpd.conf
<IfModule dir_module>DirectoryIndex obboda.html index.html
</IfModule>[root@webserver ~]# systemctl reload httpd.service
[root@webserver ~]# curl 192.168.121.21:8000
obboda.html

三、SSL证书

# 安装mod_ssl
[root@webserver ~]# yum install mod_ssl# 创建存放证书的目录
[root@webserver ~]# mkdir /etc/httpd/certs# 生成证书
[root@webserver ~]# openssl req \
> -newkey rsa:2048 \
> -nodes \
> -sha256 \
> -keyout /etc/httpd/certs/obboda.org.key \
> -x509 \
> -days 365 \
> -out /etc/httpd/certs/obboda.org.crt
Generating a 2048 bit RSA private key
...........................................+++
........................................................................................+++
writing new private key to '/etc/httpd/certs/obboda.org.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:HUNAN
Locality Name (eg, city) [Default City]:ChangSha
Organization Name (eg, company) [Default Company Ltd]:obboda
Organizational Unit Name (eg, section) []:webserver
Common Name (eg, your name or your server's hostname) []:www.webserver.org
Email Address []:obboda@123.com# 查看证书存放的目录
[root@webserver ~]# ls /etc/httpd/certs/
obboda.org.crt  obboda.org.key# 编辑配置文件
[root@webserver ~]# vim /etc/httpd/conf.d/ssl.conf
# SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateFile /etc/httpd/certs/obboda.org.crt
# SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
SSLCertificateKeyFile /etc/httpd/certs/obboda.org.key[root@webserver ~]# systemctl reload httpd.service# 浏览器访问测试

四、虚拟主机

在这之前,恢复之前所有修改过的配置。

# 分别创建站点
[root@webserver ~]# mkdir -p /var/www/virtual/obboda.org/va
[root@webserver ~]# mkdir -p /var/www/virtual/obboda.org/vb# 创建默认发布文件
[root@webserver ~]# echo "va.obboda.org" > /var/www/virtual/obboda.org/va/index.html
[root@webserver ~]# echo "vb.obboda.org" > /var/www/virtual/obboda.org/vb/index.html# 编辑配置文件
[root@webserver ~]# vim /etc/httpd/conf.d/vhost.conf
<VirtualHost _default_:80>DocumentRoot /var/www/html
</VirtualHost><VirtualHost *:80>Servername va.obboda.orgDocumentRoot /var/www/virtual/obboda.org/va/
</VirtualHost><VirtualHost *:80>Servername vb.obboda.orgDocumentRoot /var/www/virtual/obboda.org/vb/
</VirtualHost>[root@webserver ~]# systemctl reload httpd.service

在另一台测试主机上:

# 配置域名解析
[root@localhost ~]# vim /etc/hosts
192.168.121.21 va.obboda.org vb.obboda.org# 测试
[root@localhost ~]# curl va.obboda.org
va.obboda.org
[root@localhost ~]# curl vb.obboda.org
vb.obboda.org
http://www.xdnf.cn/news/15866.html

相关文章:

  • C语言:深入理解指针(2)
  • 《汇编语言:基于X86处理器》第8章 复习题和练习,编程练习
  • Spring Cloud Gateway高危隐患
  • MySQL—表设计和聚合函数以及正则表达式
  • 2024年全国青少年信息素养大赛Scratch算法创意实践挑战赛 小高组 初赛 真题
  • Python适配器模式详解:让不兼容的接口协同工作
  • 【LeetCode数据结构】单链表的应用——环形链表问题详解
  • 详解Mysql索引合并
  • LeetCode 3202.找出有效子序列的最大长度 II:取模性质(动态规划)
  • lvs调度算法(10种)
  • TCL --- 列表_part1
  • 基于FPGA实现ARINC818
  • RocketMQ核心编程模型
  • 自动找客户软件有那些?
  • 【Linux性能优化】常用工具和实战指令
  • 深入理解浏览器解析机制和XSS向量编码
  • 在Ubutu22系统上面离线安装Go语言环境【教程】
  • 《P2680 [NOIP 2015 提高组] 运输计划》
  • RPG62.制作敌人攻击波数二:攻击ui
  • 不只是“能用”:从语义化到 ARIA,打造“信息无障碍”Web 应用的实战清单
  • 在vue中遇到Uncaught TypeError: Assignment to constant variable(常亮无法修改)
  • ubuntu24.04安装CUDA和VLLM
  • #SVA语法滴水穿石# (014)关于链式蕴含的陷阱
  • 学习C++、QT---30(QT库中如何自定义控件(自定义按钮)讲解)
  • Python桌面版数独(二版)-增加4X4、6X6
  • 元宇宙经济的四个要素
  • python 字典中取值
  • SpringBoot的配置文件
  • python的pywebview库结合Flask和waitress开发桌面应用程序简介
  • 反欺诈业务 Elasticsearch 分页与导出问题分析及解决方案