hmt2345

当前位置:主页 > Linux >

Ubuntu下Apache2配置https且强制http转为https

发布时间:2019-05-27源自:未知 作者:ming阅读( )

一、Ubuntu下的Apache2 1. 安装Apache2 sudo apt-get install apache2 – 默认站点在 /var/www/ – 配置文件在 /etc/apache2/ – 日志在 /var/log/apache/ – 启动脚本是 /etc/init.d/apache2 2. etc/apache2下的文件夹与文件 apache2.conf:Apache的主要配置文件,包含全局配置。 envvars:Apache2环境变量设置。 ports.conf:配置Apache监听的端口。 mods-available:这个目录包含模块和模块配置文件,不是所有的模块都有配置文件。 mods-enabled:持有/etc/apache2/mods-available目录下文件的链接,当该目录下有一个模块文件和其配置文件,那么Apache重启后该模块将生效。 sites-available:这个目录包含Apache虚拟主机的配置文件。虚拟主机允许Apache配置多个站点并为每个站点配置不同的参数。后面下面配置的时候会配置80端口的http重定向为443的https。 sites-enabled:持有/etc/apache2/sites-available目录下文件的链接。当Apache重启后,该目录中包含的站点将会被激活。 3.ssl配置 安装openssl sudo apt-get install openssl 开启ssl模块 sudo a2enmod ssl 无效则输入下面两个命令 sudo ln -s /etc/apache2/mods-available/ssl.load /etc/apache2/mods-enabled/ssl.load sudo ln -s /etc/apache2/mods-available/ssl.conf /etc/apache2/mods-enabled/ssl.conf 获取证书 申请腾讯云或者阿里云的免费证书 腾讯云:https://console.qcloud.com/ssl 阿里云:https://help.aliyun.com/document_detail/28548.html 会有3个文件 1_root_bundle.crt 2_xxx.crt 3_xxx.key 二、配置HTTPS(SSL) 1.进入/etc/apache2/ports.conf 查看是否有 Listen 80 Listen 443 没有就添加上去 2.配置ssl虚拟站点 上文安装完后,会在/etc/apache2/sites-available/目录下生成一个缺省的default-ssl文件。缺省的网页目录仍然是/var/www/。我们可以创建一个链接到site-enabled目录。 sudo ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/001-ssl 如果不想用软链接,可以从sites-available中复制default-ssl.conf到sites-enabled(表示启用的配置),然后修改default-ssl.conf SSLCertificateFile SSLCertificateKeyFile SSLCertificateChainFile 配置为 SSLCertificateFile 证书地址/2_xxx.crt SSLCertificateKeyFile 证书地址/3_xxx.key SSLCertificateChainFile 证书地址/1_root_bundle.crt 重启apache,应该已经可以访问https了 sudo service apache2 restart 三、设置http重定向为https 1.启动重定向 启动 rewrite mod sudo a2enmod rewrite 或者 sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load 2.设置http端口重定向 打开 /etc/apache2/sites-available/000-default.conf , 在 <\VirtualHost *:80><\VirtualHost> 标签内随便一个地方加入以下三行 RewriteEngine on RewriteCond %{HTTPS} !=on RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R=301] 或者在网站目录处新建.htaccess 输入 RewriteEngine on RewriteBase / RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^.* https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301] 3.最后重启 sudo service apache2 restart

    欢迎分享转载→ Ubuntu下Apache2配置https且强制http转为https

    相关文章

    发表评论
    验证码: 看不清?点击更换

    注:网友评论仅供其表达个人看法,并不代表本站立场。

    右侧广告A一340*250
    右侧广告B一340*300
    

    收藏本站 -网站地图 -关于本站-网站公告-免责声明-联系我们

    Copyright © 2002-2019 HMT2345

    声明: 本站文章均来自互联网,不代表本站观点 如有异议 请与本站联系 本站为非赢利性网站 不接受任何赞助和广告