Apache服务器VirtualHost常用配置小结
更新时间:2024年07月21日 10:49:47 作者:极客开发者
Apache服务器中的VirtualHost用来定义虚拟主机,本文主要介绍了Apache服务器VirtualHost常用配置小结,具有一定的参考价值,感兴趣的可以了解一下
Apache服务器中的VirtualHost用来定义虚拟主机,我们可以在一个VirtualHost中定义一个项目(网站),也可以使用反向代理的方式定义多个项目(即一个域名之下多个子项目)。以下总结Apache服务器VirtualHost常用配置。
1.常规配置
<VirtualHost *:80> DocumentRoot "/var/www/html" ServerName www.jkdev.cn </VirtualHost>
- DocumentRoot:网站目录
- ServerName:网站域名
2.常用附加配置
<VirtualHost *:80> DocumentRoot "/var/www/html" ServerName localhost <Directory "/var/www/html"> Options Indexes FollowSymLinks AllowOverride All Require all granted ErrorDocument 404 https://www.jkdev.cn/404.html </Directory> </VirtualHost>
- Directory节点:定义目录属性
- Options Indexes FollowSymLinks:开启目录访问,显示目录结构,并允许在此目录中使用符号连接
- AllowOverride All:允许定义.htaccess文件
- AllowOverride None:忽略.htaccess文件
- Require all granted:允许所有请求
- ErrorDocument 404 https://www.jkdev.cn/404.html:路径匹配时跳转的404界面
3.开启HTTPS
<VirtualHost _default_:443> DocumentRoot "/var/www/html" ServerName hook.jkdev.cn SSLEngine on SSLCertificateFile /etc/ssl/2_hook.jkdev.cn.crt SSLCertificateKeyFile /etc/ssl/3_hook.jkdev.cn.key SSLCertificateChainFile /etc/ssl/1_root_bundle.crt <Directory "/var/www/html"> Options Indexes FollowSymLinks AllowOverride All Require all granted ErrorDocument 404 https://www.jkdev.cn/404.html </Directory> </VirtualHost>
- SSLEngine on:开启SSL
- SSLCertificateFile:指定证书公钥文件
- SSLCertificateKeyFile:指定证书私钥文件
- SSLCertificateChainFile:指定证书链文件
4.反向代理(端口转发)
<VirtualHost _default_:443> ServerName api.jkdev.cn SSLEngine on SSLCertificateFile /etc/ssl/api/2_api.jkdev.cn.crt SSLCertificateKeyFile /etc/ssl/3_api.jkdev.cn.key SSLCertificateChainFile /etc/ssl/1_root_bundle.crt ProxyPreserveHost On ProxyRequests Off ProxyPass /v2 http://localhost:92/ ProxyPass /v1 http://localhost:91/ ProxyPass / http://localhost:90/ ProxyPassReverse /v2 http://localhost:92/ ProxyPassReverse /v1 http://localhost:91/ ProxyPassReverse / http://localhost:90/ </VirtualHost>
- ProxyPreserveHost On:开启反向代理
- ProxyRequests Off:关闭正向代理
- ProxyPass:设置反向代理路径
- ProxyPassReverse:使Apache自动处理反向代理中的从定向响应,一般和ProxyPass一起用
5.http从定向到https
<VirtualHost *:80> ServerName jkdev.cn #redirect RewriteEngine on RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)?$ https://%{SERVER_NAME}$1 [L,R] </VirtualHost>
- RewriteEngine on:开启从定向功能
- RewriteCond %{SERVER_PORT} !^443 :从定向条件,端口不是 443 时重定向 , 为 开头, :从定向条件,端口不是443时重定向,^为开头, :从定向条件,端口不是443时重定向,为开头,为结束
- RewriteRule:重定向规则,L:表明当前规则是最后一条规则,停止分析以后规则的重写;R:强制外部重定向
到此这篇关于Apache服务器VirtualHost常用配置小结的文章就介绍到这了,更多相关Apache VirtualHost配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
CentOS 7 安装 MySQL 5.6遇到的各种问题小结
在一测试服务器(CentOS Linux release 7.2.1511)上安装MySQL 5.6(5.6.19 MySQL Community Server)时遇到了很多奇葩问题,今天小编给大家总结了关于entOS 7 安装 MySQL 5.6遇到的各种问题,需要的朋友一起看看吧2016-11-11linux为repo 'AppStream'下载元数据失败的解决
这篇文章主要介绍了linux为repo 'AppStream'下载元数据失败的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-06-06
最新评论