[英]Google Cloud Platform: Cannot get https (SSL) working on Wordpress Instance
我在Google Compute Engine上使用Apache / 2.2.22(Debian)和Wordpress安装(点击部署)。
我正在尝试为Wordpress安装设置SSL证书(https)。 我创建了一个静态IP,一个私钥,一个CSR,并已将SSL和中间crt文件(从freeSSL.com上传)上传到etc/apache2/ssl
(使用私钥),并给予此文件夹root:root
权限。
我按照指示访问了https://www.digitalocean.com/community/tutorials/how-to-create-a-ssl-certificate-on-apache-for-debian-7并更新了default-ssl配置文件(更新路径名为.crt和.key文件,ServerName和ServerAdmin)。
我运行了configtest(语法正常),启用了default-ssl并重新启动了apache。 当我访问https://domain
或https://ip-address
,出现“此网页不可用”错误(ERR_CONNECTION_CLOSED)。 wordpress安装仍然在http上加载正常。
虽然证书在那里,但https://www.digicert.com/help/上的SSL检查程序给我“找不到证书”错误。
这对我有用;
首先尝试使用Compute |中的复选框启用HTTPS 计算引擎| VM实例配置设置。 如果失败并显示错误消息,您可以直接添加防火墙规则...
关于计算| 计算引擎| 在“网络”页面中,选择“默认”网络。 然后在“防火墙规则”下单击“添加新规则”。 使用以下设置;
Name: allow-https
IP Range: 0.0.0.0/0
Allowed Protocol/Ports: tcp:443
Target tags: http-server
以上所有假设您已经用尽所有其他apache配置选项(ports.conf,虚拟主机等)。
这是解决方案:
安装VM - WordPress(由Google云服务器提供的解决方案),我的操作系统是Debian 7或内置于Google Wordpress。
Dot忘了允许在Google云控制台上安装防火墙
Allow HTTP traffic
Allow HTTPS traffic
安装Open SSH Key并访问SSH(可能使用Putty)
连接/登录ssh(使用Putty)或其他终端
更改用户(SSL终端)
$ sudo su
现在由vi / nano编辑
# nano /etc/apache2/sites-available/default-ssl.conf
添加这一行
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
还有所有证书详细信息,您可能需要购买表单提供程序
SSLCertificateFile /etc/a..../...../..../gulfstatesoftware_com.crt SSLCertificateKeyFile /etc/a..../...../..../gulfstatesoftware_com.key SSLCertificateChainFile /etc/a..../...../..../gulfstatesoftware_com.ca-bundle
和#key不需要。
保存并退出。
在终端中运行以下命令:
sudo a2ensite default-ssl
service apache2 reload
sudo a2enmod ssl
service apache2 reload
sudo service apache2 restart
您可能想修复Permalink :( www.example.com/my-blog-url),也就是在wordpress.conf文件中。
# nano /etc/apache2/sites-available/wordpress.conf
更改: AllowOverride All
将.htaccess添加到/ var / www / html
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.