【问题标题】:Accessing web site by HTTPS is breaking database connection通过 HTTPS 访问网站正在中断数据库连接
【发布时间】:2016-12-06 21:53:44
【问题描述】:

我有一个在 Apache Web 服务器上运行的 codeigniter 站点 我从letsencrypt安装了一个SSL

如果我通过http://example.com 访问我的网站,它可以正常工作

但是,

如果我通过https://example.com 访问它,网站显示但数据库已损坏

这是我的 htaccess 文件

Include /etc/phpmyadmin/apache.conf
<VirtualHost *:80>
        ServerName example.org
        ServerAlias www.example.org
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
        RewriteEngine on
        RewriteRule   "^/resources/(.+)" "https://example.org/_resources/$1"$
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
        <Directory /var/www/html>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>
        ProxyPass /api https://localhost:8010/api
        ProxyPassReverse /api https://localhost:8010/api
</VirtualHost>
<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName example.org
    ServerAlias www.example.org
    DocumentRoot /var/www/html/
    Include /etc/letsencrypt/options-ssl-apache.conf
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/example.org-0001/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/example.org-0001/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/example.org-0001/chain.pem
</VirtualHost>

【问题讨论】:

  • 您能否更仔细地描述一下:“数据库已损坏”。究竟会发生什么?
  • 所以当我用“http”访问我的网站时,一切正常,所有链接,所有从数据库中提取的动态内容,一切都按预期工作。当我用“https”访问我的网站时,只有主页有效,但没有链接也有效,主页上的动态内容是空白的。

标签: php .htaccess codeigniter ssl ssl-certificate


【解决方案1】:

通过在&lt;VirtualHost *:443&gt; 标签内添加解决了这个问题

  <Directory /var/www/html>
        AllowOverride All 
  </Directory>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-21
    • 1970-01-01
    相关资源
    最近更新 更多