Report this

What is the reason for this report?

Changing port from 80 to 443 redirects site to index (SSL related)

Posted on July 8, 2016

Hi there, i am trying to install my SSL certificate and the problem seems to be that

As soon as the virtualhost port in /etc/apache2/sites-available/default-ssl.conf or 000-default.conf is changed from 80 to 443 (needed for SSL) my website gets directed to a index folder of the html

I am running Ubuntu 14.04 w/wordpress & apache

Any help whatsoever to solve this is appreciated

Here is what my 000-default.conf looks like

<VirtualHost *:443> ServerName prollagen.com SSLEngine on SSLCertificateFile /etc/ssl/key (redacted) SSLCertificateKeyFile /etc/ssl/key (redacted) SSLCertificateChainFile /etc/ssl/key (redacted) DocumentRoot /var/www/html

    <Directory /var/www/html/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>



This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

I would recommend trying to add

DirectoryIndex index.php index.html

and restarting apache with

service apache2 restart

This will direct apache to use your index.php file rather than showing a directory index.

So cloudflare was the problem! As with “Options -Indexes”, when placing - in front of indexes apache throws out an error stating “if an option has - or +, all other options must have the same”

What would another “option” be within 000-default?

@blakeingram405

Try running the command below and post the output.

apachectl configtest

Beyond that, Apache can be finicky at times, so you may want to try defining the DocumentRoot at the top, so your configuration would end up looking like:

<VirtualHost *:443>
DocumentRoot "/var/www/html"
ServerName prollagen.com
ServerAlias *.prollagen.com
SSLEngine On
SSLCertificateFile /etc/ssl/key
SSLCertificateKeyFile /etc/ssl/key
SSLCertificateChainFile /etc/ssl/key

<Directory /var/www/html/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Note, I added a ServerAlias line below ServerName to allow other requests to resolve to the primary domain. You should also setup a similar block to allow requests on port 80 as well.

Using the above, you’re essentially telling Apache to listen on Port 443 only.

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.