我对计算机很了解,但不懂如何设置网络服务器。我有一个带有 SSL 证书的域名,因此https://example.org作品和http://example.org重定向到那里。但是,http://[裸 IP 地址] 返回 example.org 的不安全 http 版本(相同内容)。我的目标是http://[裸IP]重定向至https://example.org。我相信我们有一个“弹性 IP”,即指向某个 EC2 实例的静态 IP。
我在 Ubuntu 的 AWS EC2 实例上运行 bitnami wordpress ...“thingy”(实例?服务?不知道正确的术语是什么)。我尝试了 /opt/bitnami/apache2/conf/httpd.conf 中的各种方法来重定向 IP,但都失败了。我不会发布我尝试过的方法,因为它来自随机网页和“巫术”(只需输入这个并希望),但没有成功。我宁愿重新开始并“以正确的方式”去做。
我了解到必须重新启动 apache 服务才能使对 httpd.conf 的更改生效,我一直都是这么做的。我还打开了重度错误日志记录,并且知道日志在哪里,但无法理解它们的含义。
明确的步骤如下:“用这些行编辑这个文件,重新启动 apache,刷新http://[裸IP],地址左侧带有红色斜线的锁现在应该没有斜线” ,我们非常感谢。
这是我手动添加到 httpd.conf 的唯一内容(为了回答评论),并且更改了实际的 IP 地址和域名:
<VirtualHost *:80>
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^N1\.N2\.N3\.N4$
RewriteRule ^(.*)$ https://testing.example.org/$1 [R=301,L]
</VirtualHost>
答案1
Bitnami 开发人员在这里,
/opt/bitnami/apache2/conf/bitnami/bitnami.conf
您可以通过在新实例中添加以下配置将 Apache 配置为仅接受对单个域名的请求:
- 在下面添加下几行
<VirtualHost _default_:80>
:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(localhost|127.0.0.1)
RewriteRule ^(.*)$ https://example.com$1 [R=permanent,L]
- 在下面添加下几行
<VirtualHost _default_:443>
:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^example.com$
RewriteCond %{HTTP_HOST} !^(localhost|127.0.0.1)
RewriteRule ^(.*)$ https://example.com$1 [R=permanent,L]
之后,使用以下命令重新启动 Apache 服务
sudo /opt/bitnami/ctlscript.sh restart apache
请记住替换example.com
为您的实际域名。