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

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.dtcms.com/a/288851.html

相关文章:

  • DOM型XSS破坏
  • gcc 和 g++ 的区别
  • Pycaita二次开发基础代码解析:材料属性管理与焊点坐标导出实战指南
  • Go实现用户登录小程序
  • WPF学习笔记(28)Interaction.Triggers的意义与使用方式
  • Java设计模式之行为型模式(备忘录模式)应用场景分析
  • HTML和CSS快速入门
  • 【算法】二分查找经典例题
  • 2025最新 PostgreSQL17 安装及配置(Windows原生版)
  • 大语言模型调用方式与函数调用
  • Node.js 与 Java 性能对比
  • 零基础 “入坑” Java--- 十三、再谈类和接口
  • 网络原理——IP
  • 【硬件】GalaxyTabPro10.1(SM-T520)刷机/TWRP/LineageOS14/安卓7升级小白向保姆教程
  • Nginx的location匹配规则
  • 【数据结构与算法】数据结构初阶:详解二叉树(一)
  • Mysql 学习总结(90)—— Mysql 8.0 25 条性能优化实战指南
  • ubuntu 24.04 xfce4 钉钉输入抢焦点问题
  • Baumer工业相机堡盟工业相机如何通过YoloV8的深度学习模型实现螺母螺丝的分类检测(C#代码,UI界面版)
  • 二、Spark 开发环境搭建 IDEA + Maven 及 WordCount 案例实战
  • PaddleOCR 与 PaddleX 调试
  • linux ps -a与-e的区别
  • Spring Cloud Gateway高危隐患
  • 社交圈子系统开源社交源码 / 小程序+H5+APP 多端互通的底层技术分析
  • [特殊字符] 小程序 vs 智能体:下一代应用开发,谁主沉浮?
  • 「Java案例」利用方法打印乘法表
  • 传输层协议 TCP
  • 相机模型和对极几何
  • SparseTSF:用 1000 个参数进行长序列预测建模
  • 【no vue no bug】 npm : 无法加载文件 D:\software\nodeJS\node22\npm.ps1