.htaccess 访问https://myIP提供不安全的连接,如何重定向到安全域htaccess

syqv5f0l  于 2023-02-19  发布在  其他
关注(0)|答案(1)|浏览(111)

我有一个SSL证书为我的域,工作得很好。
但是,如果我转到https://111.111.111.111(不是真实的的IP),我会收到一条消息:* 不安全的连接,证书不可信 *.当然这是完全正确的,因为我没有IP的证书,我也不会得到(让加密不这样做).
我一直困惑于Apache 2配置文件和.htaccess文件将任何对https://111.111.111.111的请求重定向到我真实的的域https://www.example.com
这是我的.htaccess文件:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^111\.111\.111\.111$
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]

如果我尝试连接到http://www.example.com,它可以正常工作111.111.111.111,但当我连接到https://111.111.111.111时,它就不能正常工作
我最初的想法是补充一句:

RewriteCond %{HTTP_HOST} ^https$ [NC]

以上

RewriteCond %{HTTP_HOST} ^111\.111\.111\.111$

但那不管用。
对于如何解决此问题有何建议?

qojgxg4l

qojgxg4l1#

在您的ssl配置上执行以下操作:

<If "%{HTTP_HOST} == '<your ip>'">
    Redirect permanent / https://yourdomain.com/
</If>

在您的示例中,这是:

<If "%{HTTP_HOST} == '111.111.111.111'">
    Redirect permanent / https://example.com/
</If>

重定向位于

modules/mod_alias.so

因此,要为您的服务器启用模块,请转到您的mods-enabled目录,如果符号链接丢失,请执行以下操作

sudo ln -s ../mods-available/alias.conf alias.conf
sudo ln -s ../mods-available/alias.load alias.load

相关问题