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

Apache HTTP Server 从安装到配置

一、Apache 是什么?

Apache(全称 Apache HTTP Server)是当前最流行的开源Web服务器软件之一,由Apache软件基金会维护。它以稳定性高、模块化设计灵活的配置著称,支持Linux、Windows等多平台,是搭建个人博客、企业官网乃至复杂Web应用的首选工具。

#apache的基本信息
/etc/httpd/conf#apache的配置目录
/etc/http/conf.d#子配置目录
/etc/httpd/conf/httpd.conf#主配置文件
/lib/systemd/system/htpd.service#启动文件
:80#默认端口
/var/www/html#默认发布目录
index.html#默认发布文件

二、安装Apache

# 1. 安装Apache
sudo dnf install httpd -y# 2. 放行防火墙(允许HTTP/HTTPS流量)
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload# 3. 启动并设置开机自启
sudo systemctl enable --now httpd# 4.生成默认测试页文件
echo 172.25.254.100 > /var/www/html/index.html# 5.测试:
curl 172.25.254.100
172.25.254.100

三、Apache的基本配置信息

1.端口修改

#修改配置文件
[root@apache ~]# vim /etc/httpd/conf/httpd.conf
47 Listen 8080#刷新服务
[root@apache ~]# systemctl reload httpd#设定火墙通过
[root@apache ~]# firewall-cmd --permanent --add-port=8080/tcp
success[root@apache ~]# firewall-cmd --reload#检测
[root@apache ~]# netstat -antlupe | grep httpd
tcp6       0      0 :::8080                 :::*                   LISTEN      0 78081      32315/httpd#访问:
[root@apache ~]# curl 172.25.254.100:8080
172.25.254.100

 2.默认发布目录

修改selinux  ——开着的话会有所影响
grubby --update-kernel ALL --args selinux=0reboot ——重启getenforce
Disabled#建立默认发布目录
[root@apache ~]# mkdir /web/html -p#修改配置文件
[root@apache ~]# vim /etc/httpd/conf/httpd.conf
125 DocumentRoot "/web/html" #指定默认发布目录位置
126 <Directory "/web/html"> 
127         Require all granted #对于目录访问进行授权
128 </Directory>[root@apache ~]# systemctl restart httpd[root@apache ~]# echo "/web/html's page" > /web/html/index.html[root@apache ~]# curl 172.25.254.100:8080
/web/html's page

3.默认发布文件

#建立新的默认发布文件
[root@apache ~]# echo "/web/html/lee's page" > /web/html/lee.html#当没有对配置进行修改时新默认发布文件不会被默认访问
[root@apache ~]# curl 172.25.254.100:8080
/web/html's page
[root@apache ~]# curl 172.25.254.100:8080/lee.html
/web/html/lee's page#修改配置文件
[root@apache ~]# vim /etc/httpd/conf/httpd.conf
172 <IfModule dir_module>
173     DirectoryIndex lee.html index.html
174 </IfModule>#重启服务
[root@apache ~]# systemctl reload httpd#测试:
[root@apache ~]# curl 172.25.254.100:8080
/web/html/lee's page

4.https

#安装mod_ssl
[root@apache ~]# dnf install mod_ssl -y#建立证书和key文件目录
[root@apache ~]# mkdir /etc/httpd/certs#制作证书
[root@apache ~]# openssl req \
-newkey rsa:2048 \
-nodes \
-sha256 \
-keyout /etc/httpd/certs/timinglee.org.key \
-x509 \
-days 365 \
-out /etc/httpd/certs/timinglee.org.crtCountry Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Shannxi
Locality Name (eg, city) [Default City]:XI'AN
Organization Name (eg, company) [Default Company Ltd]:timinglee
Organizational Unit Name (eg, section) []:webserver
Common Name (eg, your name or your server's hostname) []:www.timinglee.org
Email Address []:timinglee@timinglee.org#命令执行完成,证书出现
[root@apache ~]# ls /etc/httpd/certs/
timinglee.org.crt timinglee.org.key#编辑主配置文件
[root@apache ~]# vim /etc/httpd/conf.d/ssl.conf86 SSLCertificateFile /etc/httpd/certs/timinglee.org.crt95 SSLCertificateKeyFile /etc/httpd/certs/timinglee.org.key#重启服务
root@apache ~]# systemctl reload httpd
[root@apache ~]# netstat -antlupe | grep httpd
tcp6       0     0 :::443                 :::*                   LISTEN     0 85111     33518/httpd
tcp6       0     0 :::80                   :::*                   LISTEN     0 80172     33518/httpd#在浏览器中访问
https://服务器ip

5.apache的虚拟主机

修改selinux  ——有所影响
grubby --update-kernel ALL --args selinux=1reboot ——重启getenforce
Enforcing#为每个发布站点建立默认发布目录
[root@apache ~]# mkdir -p /var/www/virtual/timinglee.org/news
[root@apache ~]# mkdir -p /var/www/virtual/timinglee.org/bbs#为每个站点建立默认发布文件
[root@apache ~]# echo new.timinglee.org > /var/www/virtual/timiniglee.org/news/index.html
[root@apache ~]# echo bbs.timinglee.org > /var/www/virtual/timiniglee.org/bbs/index.html#修改配置文件
[root@apache ~]# vim /etc/httpd/conf.d/vhosts.conf<VirtualHost _default_:80>DocumentRoot /var/www/html
</VirtualHost><VirtualHost *:80>ServerName bbs.timinglee.orgDocumentRoot /var/www/virtual/timiniglee.org/bbs/
</VirtualHost><VirtualHost *:80>ServerName news.timinglee.orgDocumentRoot /var/www/virtual/timiniglee.org/news/
</VirtualHost>#刷新服务
[root@apache ~]# systemctl reload httpd#测试:
1.在浏览器所在主机中手动编写本地解析文件
[root@apache ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
#加入虚拟主机解析域名
172.25.254.100 mariadb.timinglee.org www.timinglee.org news.timinglee.org 
bbs.timinglee.org2.测试效果
[root@apache ~]# curl www.timinglee.org
172.25.254.100
[root@apache ~]# curl bbs.timinglee.org
bbs.timinglee.org
[root@apache ~]# curl news.timinglee.org
new.timinglee.org

http://www.dtcms.com/a/275415.html

相关文章:

  • 使用python 实现一个http server
  • 搭建云手机教程
  • 力扣面试150题--括号生成
  • S7-200 SMART CPU 密码清除全指南:从已知密码到忘记密码的解决方法
  • AI产品经理面试宝典第11天:传统软件流程解析与AI产品创新对比面试题与答法
  • MongoDB数据库入门到集群部署企业级实战
  • linux使用lsof恢复误删的nginx日志文件——筑梦之路
  • (C++)STL:list认识与使用全解析
  • Kafka Schema Registry:数据契约管理的利器
  • python数据分析及可视化课程介绍(01)以及统计学的应用、介绍、分类、基本概念及描述性统计
  • [BUUCTF 2018]Online Tool
  • 事件驱动设计:Spring监听器如何像咖啡师一样优雅处理高并发
  • java单例设计模式
  • Leet code 每日一题
  • 基于随机森林的金融时间序列预测系统:从数据处理到实时预测的完整流水线
  • FreeRTOS—动态创建与删除任务实战;静态创建与删除任务实战
  • ubuntu18.04 升级Ubuntu 20.04
  • 外设数据到昇腾310推理卡 之一
  • Linux进程管理的核心:task_struct中的双链表与网状数据结构
  • 【攻防实战】记一次DC2攻防实战
  • 【Linux仓库】虚拟地址空间【进程·陆】
  • DVWA靶场通关笔记-XSS DOM(Low级别)
  • 力扣-19. 删除链表的倒数第N个节点
  • 前端内容-ES6
  • Vue.js:从 Web 到桌面的跨端实践与技术选型指南
  • 虚拟现实的镜廊:当技术成为存在之茧
  • AI之DL之VisualizationTool:ai-by-hand-excel的简介、安装和使用方法、案例应用之详细攻略
  • 生成式对抗网络(GAN)模型原理概述
  • 用 Python 将分组文本转为 Excel:以四级词汇为例的实战解析
  • Socket到底是什么(简单来说)