lamp之apache配置https访问
配置apache 使用https
注:怕其他人由于路径的原因出问题,首先声明一下,本人apache的安装目录为 : /usr/local/httpd2.4.25,如果不是,请参考进行配置
注: 对于如下 ssl.conf的配置文件,如果其他人进行配置的话,不必完全一致的拷贝此配置文件,因为有部分代码是从默认的 "httpd-ssl.conf" 配置文件中拿过来的,如果其他人安装的apache编译版本(ssl模块已添加)跟这个版本一样,则可以完全拷贝
一. 针对全局网站使用https(配置所有网站web使用https访问)
# vim /usr/local/httpd2.4.25/conf/httpd.conf ServerName www.example.com: Redirect permanent / https://www.example.com #service httpd restart
二. 针对单个网站站点使用https
1. 配置单网站重定向
# vim /usr/local/httpd2.4.25/conf/httpd.conf (单个网站,也可以是其他命名方式的配置文件)
<VirtualHost *:80>
ServerName pxsnxg.pxjy.com
Redirect permanent / https://pxsnxg.pxjy.com/
</VirtualHost>
2. 配置ssl配置文件以及主配置文件加载ssl模块(前提是编译时把ssl模块编译进去,方能支持,否则会报错)
开启主配置文件,进行加载ssl模块
#vim /usr/local/httpd2.4.25/conf/httpd.conf
Include conf/extra/ssl.conf
LoadModule ssl_module modules/mod_ssl.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
配置单个网站相关ssl的配置文件
注: 对于如下 ssl.conf的配置文件,如果其他人进行配置的话,不必完全一致的拷贝此配置文件,因为有部分代码是从默认的 "httpd-ssl.conf" 配置文件中拿过来的,如果其他人安装的apache编译版本(ssl模块已添加)跟这个版本一样,则可以完全拷贝
#vim /usr/local/httpd2.4.25/conf/extra/ssl.conf (这里的ssl.conf配置文件,也可以是其他命名方式的配置文件)
Listen SSLCipherSuite HIGH:MEDIUM:!MD5:!RC4 SSLProxyCipherSuite HIGH:MEDIUM:!MD5:!RC4 SSLHonorCipherOrder on SSLProtocol all -SSLv3 SSLProxyProtocol all -SSLv3 SSLPassPhraseDialog builtin SSLSessionCache "shmcb:/usr/local/httpd2.4.25/logs/ssl_scache(512000)" SSLSessionCacheTimeout <VirtualHost _default_:> DocumentRoot "/apptest/web/test" ## 根据自己网站目录,随机配置 ServerName pxsnxg.pxjy.com ## 网站域名 ServerAdmin you@example.com ErrorLog "/apptest/logs/project_error.log" ## 网站日志路径 TransferLog "/apptest/logs/project_access.log" ## 网站日志路径
##如下<Directory>控制区域,主要是针对https访问时进行控制用的,否则rewrite重定向规则是不生效的,除了开启rewrite模块,还需要将”AllowOverride None“改为“AllowOverride all”
<Directory "/apptest/web/test"> ## 此配置如果没有会影响网站访问
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile "/usr/local/httpd2.4.25/conf/ssl/pxsnxg.pxjy.com.cer" ##如下三行是购买证书的三个证书相关文件,相关ssl目录是手动创建,证书需要准备
SSLCertificateKeyFile "/usr/local/httpd2.4.25/conf/ssl/pxsnxg.pxjy.com.key"
SSLCertificateChainFile "/usr/local/httpd2.4.25/conf/ssl/pxsnxg.pxjy.com_ca.crt"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/usr/local/httpd2.4.25/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-5]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog "/usr/local/httpd2.4.25/logs/ssl_request_log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
三. 配置Apache 同时支持 80 和 443 端口 访问网站
1. 在https-vhosts.conf 里添加80端口虚拟主机的配置
<VirtualHost *:> ServerAdmin webmaster@dummy-host2.example.com DocumentRoot "/apptest/web/test" ServerName pxsnx.pxjy.com ErrorLog "/apptest/logs/pxsnxg_error.log" CustomLog "/apptest/logs/pxsnxg_access.log" combined DirectoryIndex index.php index.Html index.html php_admin_value open_basedir "/apptest/web/test:/tmp:." <Directory "/apptest/web/test"> Options FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>
2. 配置httpd.conf 开启加载ssl.conf(可以是其他命令方式的关于ssl的配置文件),ssl的配置跟上面的雷同,这里省略(相当于是把80 和443的配置文件分开来部署)
四. 重新加载apache服务
# /usr/local/httpd2.4.25/bin/apache graceful
lamp之apache配置https访问的更多相关文章
- Linux Apache配置https访问
配置https访问 该环境是rh254课程配套的一个环境,不过配置方法步骤相同. 要求: 使用虚拟主机技术部署两个网站: 网站1: 绑定域名 www0.example.com 目录在 /srv/www ...
- Apache 配置 HTTPS访问
将需要配置的项目移动到另一根目录下,作为https访问位置. 修改bitnami配置文件..\Bitnami\wampstack-5.6.19-0\apache2\conf\bitnami\bitna ...
- Apache配置HTTPS功能
apache配置https 一.yum 安装openssl和openssl-devel,httpd-devel 二.生成证书(也可以从公司的证书颁发机构获取): #建立服务器密钥 openssl ge ...
- Windows上为Apache配置HTTPS
Windows上为Apache配置HTTPS 转 https://www.cnblogs.com/tianzijiaozi/p/7582671.html 1. 安装OpenSSL: Windo ...
- Linux下Apache配置HTTPS功能
Apache配置HTTPS功能 转 https://www.cnblogs.com/liaojiafa/p/6028816.html 一.yum 安装openssl和openssl-devel,ht ...
- Apache配置https
Apache配置https 之前一直用的是Tomcat,今天突然接到任务要给Apache配置https证书,因为小程序要用.下面把过程列出来以备后续查看. 1.首先你得有ssl证书,没有的可以去购买, ...
- OkHttp配置HTTPS访问+服务器部署
1 概述 OkHttp配置HTTPS访问,核心为以下三个部分: sslSocketFactory() HostnameVerifier X509TrustManager 第一个是ssl套接字工厂,第二 ...
- apache配置禁止访问某些文件/目录
我们来看俩段通常对上传目录设置无权限的列子,配置如下: 代码如下: ? 1 2 3 4 5 6 <Directory "/var/www/upload"> <Fi ...
- 使用docker搭建最新版本的gitea,并配置HTTPS访问
使用docker搭建最新版本的gitea,并配置HTTPS访问 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 简介 之前有搭建 ...
随机推荐
- Go 学习资料
Go 学习资料 网址 Go 中文版 http://docscn.studygolang.com/ Go 语言教程(菜鸟教程) http://www.runoob.com/go/go-tutorial. ...
- android studio 升级到3.3.1后,提示程序包不存在
android studio 升级到3.3.1后,提示程序包不存在 原因 主Module--A 引用了其他Moduel--B里的jar库, 只需要把B的dependencies改成如下(implent ...
- NetCore部署到Linux服务器+Supervisor的步骤及过程中踩过的坑
本文作备忘使用 服务器配置: 下面是所有操作的具体步骤: 1.安装nginx 参考 1.1 添加源:默认情况Centos7中没有Nginx源,最近Nginx官网提供了Centos的源地址. sud ...
- Windows 7 X64平台编译LLVM+clang
1 源码包 去LLVM官方网站下载最新的源码,Windows平台下载三个即可(2019.04.24版本为LLVM 8.0.0): LLVM source code (.sig) Clang sourc ...
- C# 6.0:新的Dictionary Initializer
初始化Dictionary不是什么新东西,你可以简单的通过Collection Initializer来初始化一个Dictionary,这是从C#3.0就有的特性.Collection Initial ...
- centos7虚拟机克隆后设置固定IP
虚拟机centos7克隆一份出来之后,新centos7更改了固定IP,可是不生效.重启网卡时报错: network.service: control process exited, code=exit ...
- sql 存储过程和触发器
mysql----------------------------------------------------------------------------------------------- ...
- 转载一份kaggle的特征工程:经纬度、特征构造、转化率
转载:https://www.toutiao.com/i6642477603657613831/ 1 如果训练/测试都来自同一时间线,那么就可以非常巧妙地使用特性.虽然这只是一个kaggle的案例,但 ...
- case class 和class的区别以及构造器参数辨析
工作中偶然发现Scala构造方法中的参数,无论是否有val/var修饰都可以顺利编译运行,如下: class AA(name: String) class BB(val name: String) 那 ...
- 理解block和inode
什么是block和inode? 定义:block就像是杯子 inode就像是杯子的编号,因为杯子太多了 1.根据文件的大小,在磁盘中储存时会占用一个或多个block:那么究竟多大的文件会使用一个blo ...