Apache(httpd) 搭建笔记

Apache 搭建笔记

  • 安装Apache HTTP服务器:
    • 启动Apache服务并设置开机自启
  • 配置SSL证书
    • 配置Apache的SSL虚拟主机:
    • 重启Apache服务以使更改生效:
  • 多站点
      • 配置第一个虚拟主机
      • 配置第二个虚拟主机
      • 创建每个站点的根目录:
  • 强制跳转http>>https
  • 多站点的强制跳转http>>https
  • 目录结构

安装Apache HTTP服务器:

yum install httpd
iptables -L #查看是否有防火墙规则
systemctl status firewalld #查看是否开启防火墙
#有防火墙最好关闭
setenforce 0  #关闭selinux

启动Apache服务并设置开机自启

systemctl start httpd
systemctl enable httpd

配置SSL证书

将SSL证书和私钥文件上传到服务器上。通常,证书文件的扩展名为.crt,私钥文件的扩展名为.key。
将证书文件和私钥文件移动到适当的目录,例如/etc/httpd/ssl/:

mkdir /etc/httpd/ssl
mv /tmp/certificate.crt /etc/httpd/ssl/
mv /tmp/private.key /etc/httpd/ssl/

配置Apache的SSL虚拟主机:

vim /etc/httpd/conf/httpd.conf

去掉文本内下列参数注释#

LoadModule ssl_module modules/mod_ssl.so
Include conf.d/*.conf

在配置文件的末尾添加以下内容,配置SSL虚拟主机:

<VirtualHost *:443>ServerName your_domain.com #你的域名DocumentRoot /var/www/htmlSSLEngine onSSLCertificateFile /etc/httpd/ssl/certificate.crtSSLCertificateKeyFile /etc/httpd/ssl/private.key<Directory /var/www/html>AllowOverride All</Directory>
</VirtualHost>

重启Apache服务以使更改生效:

systemctl restart httpd

多站点

每个虚拟主机可以有自己的域名、目录和配置。通过Apache的虚拟主机功能配置多站点
修改配置文件

vim /etc/httpd/conf/httpd.conf

下列参数取消注释#

NameVirtualHost *:80
Include conf.d/*.conf

配置第一个虚拟主机

vim /etc/httpd/conf.d/your_domain1.conf
<VirtualHost *:80>ServerName your_domain1.comDocumentRoot /var/www/html/your_domain1
</VirtualHost>

your_domain1.com替换为你的第一个域名,并将/var/www/html/your_domain1替换为第一个站点的根目录。

配置第二个虚拟主机

复制第一个虚拟主机配置块,并修改其中的域名和目录:

vim /etc/httpd/conf.d/your_domain2.conf
<VirtualHost *:80>ServerName your_domain2.comDocumentRoot /var/www/html/your_domain2
</VirtualHost>

保存并关闭文件

创建每个站点的根目录:

将your_domain1和your_domain2替换为每个站点的名称

mkdir /var/www/html/your_domain1
mkdir /var/www/html/your_domain2

将每个站点的文件放置在相应的根目录中。
重启Apache服务

systemctl restart httpd

强制跳转http>>https

修改配置文件

vim /etc/httpd/conf/httpd.conf

在文件的末尾添加以下内容来创建一个新的虚拟主机配置块,用于重定向HTTP到HTTPS:
请确保将your_domain.com替换为你的实际域名。

<VirtualHost *:80>ServerName your_domain.com #你的域名Redirect permanent / https://your_domain.com/
</VirtualHost>

保存并关闭文件。
重启httpd服务

systemctl restart httpd

多站点的强制跳转http>>https

打开每个站点的配置文件

vim /etc/httpd/conf.d/your_domain1.conf

在文件中找到或添加标签,并在其中添加以下重定向规则:

<VirtualHost *:80>ServerName your_domain1.comDocumentRoot /var/www/html/your_domain1RewriteEngine OnRewriteCond %{HTTPS} offRewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</VirtualHost>

将your_domain1.com替换为你的第一个域名,并将/var/www/html/your_domain1替换为第一个站点的根目录。
重复上述步骤,为每个站点的配置文件添加相应的重定向规则。
重启Apache服务以使更改生效

systemctl restart httpd

目录结构

在这里插入图片描述

conf:存放主配置文件httpd.conf,在httpd文件中可以对Apache进行配置。
conf.d:目录通常用于存放额外的Apache配置文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/232.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【 vue使用请求loading:组件形式】

vue使用请求loading:组件形式(不推荐&#xff1a;太麻烦了&#xff0c;每个需要用到的页面都需要引用一次组件) 这是我项目中想使用loading之后踩的第一个坑&#xff0c;后面优化用了vant自带的提示框&#xff0c;比较简单&#xff0c; 可移步这篇文章→→→ vuevant使用请求l…

ROS+APM无人机无法起飞

APMROS解锁后不起飞 : 参考链接 PX4固件官网提供的代码不支持APM固件使用&#xff0c;需要进行相关修改后使用 解决办法 使用如下代码发布无人机位置控制时&#xff0c;必须先执行无人机起飞动作时候&#xff0c;这条命令才会生效。 ros::Publisher local_pos_pub nh.adve…

ylb-接口8手机号注册

总览&#xff1a; 在web模块下的service包&#xff0c;补充短信接口&#xff08;SmsService&#xff09;&#xff1a;检查用户发送的验证码是否正确 package com.bjpowernode.front.service;public interface SmsService {/*** param phone 手机号* return true&#xff1a;发…

Java 的集合

一、Collection 1、ArrayList 底层采用数组实现&#xff0c;操作大多基于对数组的操作。 在添加和删除时需要做 System.arraycopy(native层方法) 拷贝工作。 添加元素时可能会扩容&#xff0c;这要大量的拷贝工作&#xff0c;删除元素时&#xff0c;会把后面的元素向前拷贝。…

Redis+IDEA极速了解和实现单机锁和分布式锁

单机下&#xff1a; 只适用于单机环境下&#xff08;单个JVM&#xff09;&#xff0c;多个客户端访问同一个服务器 1.synchronized package com.cloud.SR.controller;import org.springframework.beans.factory.annotation.Value; import org.springframework.data.redis.cor…

wps插入图片显示不全、混乱

问题如下&#xff1a; 原因&#xff1a; 格式混乱 解决办法&#xff1a; 1、统一格式&#xff0c;使用格式刷统一文档的格式 2、Ctrl A 全选&#xff0c;重新选择行距 3、重新粘贴图片&#xff08;选择嵌入型&#xff09;

【Hello mysql】 mysql的内置函数

Mysql专栏&#xff1a;Mysql 本篇博客简介&#xff1a;介绍mysql的基内置函数 mysql的内置函数 日期函数获取年月日获取时分秒获取时间戳在日期的基础上加上日期在日期的基础上减去日期计算两个日期之差创建一张表 记录生日创建一个留言表 字符串函数获取emp表的ename列的字符集…

Dubbo分布式服务框架,springboot+dubbo+zookeeper

一Dubbo的简易介绍 1.Dubbo是什么&#xff1f; Dubbo是一个分布式服务框架&#xff0c;致力于提供高性能和透明化的RPC远程服务调用方案&#xff0c;以及SOA服务治理方案。 简单的说&#xff0c;dubbo就是个服务框架&#xff0c;如果没有分布式的需求&#xff0c;其实是不需…

idea编译时遇到的bug

1、对象重复定义 问题描述&#xff1a; D:\workspace\spark\src\main\Scala\WordCount.scala:3:8 WordCount is already defined as object WordCount object WordCount { 解决参考博客&#xff1a;Error:(21, 8) FlumePushWordCount is already defined as object FlumePush…

水调歌头·明月几时有

相关标签 宋词、苏轼、月亮、中秋、饮酒、思念 标题 水调歌头明月几时有 作者简介 苏轼&#xff08;1037-1101&#xff09;&#xff0c;字子瞻&#xff0c;号东坡居士&#xff0c;眉州眉山&#xff08;今属四川&#xff09;人&#xff0c;北宋时期杰出的文学家、政治家、艺…

PDF转成PNG,之后PNG转成PDF

PDF2IMG 需要安装python的img2pdf和pdf2img的包&#xff0c;还需要安装https://github.com/oschwartz10612/poppler-windows/releases/&#xff0c;并且解压之后把路径lib/bin添加到环境变量 import multiprocessing import sys from datetime import time import time from p…

rust abc(5): 常量

文章目录 1. 目的2. 基本用法2.1 说明2.2 运行结果 3. 不推荐或不正确用法3.1 不推荐用小写字母作为常量名字3.2 常量名称中含有小写字母就会报warning3.3 定义常量时&#xff0c;不指定数据类型会编译报错 4. const 和 immutable 的区别4.1 const 可以在函数外声明&#xff0c…

基于深度学习的高精度安全帽及背心检测识别系统(PyTorch+Pyside6+YOLOv5模型)

摘要&#xff1a;基于深度学习的高精度安全帽及背心检测识别系统可用于日常生活中或野外来检测与定位安全帽及背心目标&#xff0c;利用深度学习算法可实现图片、视频、摄像头等方式的安全帽及背心目标检测识别&#xff0c;另外支持结果可视化与图片或视频检测结果的导出。本系…

Go和Java实现策略模式

Go和Java实现策略模式 模拟多种营销类型优惠券&#xff0c;折扣⾦额计算策略场景。 1、策略模式 在策略模式中一个类的行为或其算法可以在运行时更改&#xff0c;这种类型的设计模式属于行为型模式。 在策略模式定义了一系列算法或策略&#xff0c;并将每个算法封装在独立的…

iOS/macOS - 逐行写入文件 (NSFileHandle)

文章目录 - (void)saveDataByLine{NSString *filePath = @"/Users/xx/Library/Containers/com.ds.TMXExport/Data/Library/Caches/a.txt";NSLog(@"filePath : %@", filePath);if (!

代码随想录算法训练营第五十天|123.买卖股票的最佳时机III、188.买卖股票的最佳时机IV

leetcode 123 买卖股票的最佳时机 III 题目链接 123. 买卖股票的最佳时机 III - 力扣&#xff08;LeetCode&#xff09; 做题过程 这里有两次交易机会。因此有5种状态。0没有操作&#xff0c;1第一次买入&#xff0c;2第一次卖出&#xff0c;3第二次买入&#xff0c;4第二次…

WebDAV之π-Disk派盘 + Solid Explorer

Solid Explorer 支持WebDAV方式连接π-Disk派盘。 Solid Explorer 是一款非常优秀的 Android 文件管理器&#xff0c;Material Design 设计风格&#xff0c;双栏布局&#xff0c;可拖拽操作、支持 ROOT 权限、多媒体浏览器、压缩包支持&#xff0c;Chromecast 流支持等众多功…

微信为什么使用 SQLite 保存聊天记录?

概要 SQLite 是一个被大家低估的数据库&#xff0c;但有些人认为它是一个不适合生产环境使用的玩具数据库。事实上&#xff0c;SQLite 是一个非常可靠的数据库&#xff0c;它可以处理 TB 级的数据&#xff0c;但它没有网络层。接下来&#xff0c;本文将与大家共同探讨 SQLite 在…

基于Tensorflow来重现GPT v1模型

OpenAI推出的ChatGPT模型让我们看到了通用人工智能的发展潜力&#xff0c;我也找了GPT的相关论文来进行研究。OpenAI在2017年的论文Improving Language Understanding by Generative Pre-Training提出了GPT的第一个版本&#xff0c;我也基于这个论文来用Tensorflow进行了复现。…

Keepalived 安装与配置

安装 Keepalived apt -y install keepalived 里边有一个杠y&#xff0c;就是我安装的时候里面有yes&#xff0c;就直接是yes 添加 Keepalived 配置 安装好之后, 下一步就开始去来写这个配置文件了&#xff0c;就在这里面去建一个 etc 当中&#xff0c;就是在这个 etc 当中建一个…