CentOS - Apache HTTPS não lendo o htaccess

1

Eu tenho um problema com reescrever no apache no CentOS.

Se eu carregar meu site do HTTP, tudo funcionará bem. Reescreva as regras de trabalho. Depois de alterá-lo para HTTPS, as regras de reescrita não funcionam.

Depois de alguns testes e navegando pelos tópicos, percebi que de alguma forma o apache não está pegando o arquivo .htaccess se o site é acessado de HTTPS.

O que eu fiz para testar foi inserir negação de todos no arquivo .htaccess. Quando eu acesso o link ele mostra o erro Proibido. Quando eu acesso via link eu ainda posso carregar a página, o que significa que o .htaccess não está sendo lido.

Eu verifiquei o httpd.conf e o ssl.conf e também garanti que o AllowOverride All está definido. Existe algum outro lugar que eu poderia ter perdido?

Aqui está minha configuração httpd.conf:

<VirtualHost *:443>
    SSLEngine On
    SSLCertificateFile /etc/httpd/ssl/my.domain.crt
    SSLCertificateKeyFile /etc/httpd/ssl/my.domain.key
    SSLCACertificateFile /etc/httpd/ssl/caroot.crt

     ServerAdmin [email protected]
     ServerName my.domain.com
     ServerAlias my.domain.com
     DocumentRoot /var/www/my.domain.com/public_html/
        <Directory />
            Options FollowSymLinks
            AllowOverride All
        </Directory>
        <Directory /var/www/my.domain.com/public_html/>
            Options Indexes FollowSymLinks ExecCGI MultiViews
            #RewriteEngine on 
            AllowOverride All
            Order allow,deny
            allow from all
        </Directory>

     ErrorLog /var/www/my.domain.com/logs/ssl-error.log
     CustomLog /var/www/my.domain.com/logs/ssl-access.log combined
</VirtualHost>

E abaixo está o meu arquivo .htaccess colocado em /var/www/my.domain.com/public_html /

AddType text/x-component .htc
Options FollowSymLinks
<IfModule mod_rewrite.c>
    RewriteEngine on 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME}\.php -f 
    RewriteRule ^(.*)$ $1.php
</IfModule>

<IfModule !mod_rewrite.c>
    ErrorDocument 404 /index.php
</IfModule> 

Abaixo está a configuração para a porta 80:

<VirtualHost *:80>
     ServerAdmin [email protected]
     ServerName my.domain.com
     ServerAlias my.domain.com
     DocumentRoot /var/www/my.domain.com/public_html/
        <Directory />
                Options FollowSymLinks
                AllowOverride All
        </Directory>
        <Directory /var/www/my.domain.com/public_html/>
                Options Indexes FollowSymLinks ExecCGI MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

     ErrorLog /var/www/my.domain.com/logs/error.log
     CustomLog /var/www/my.domain.com/logs/access.log combined
</VirtualHost>
    
por darnpunk 08.07.2015 / 03:28

2 respostas

0

Transformando meu comentário em / a resposta, então:

Existe outro virtualhost padrão? Como tudo que você mostrou parece correto, suspeito que há algo mais que impede que isso funcione corretamente. Provavelmente, arquivos conf padrão e / ou suas configurações padrão.

Verifique as configurações padrão em ssl.conf, especialmente ServerName e ServerAlias. Também httpd.conf

    
por 10.07.2015 / 10:23
0

Certifique-se de que sua configuração global do Apache tenha a seguinte linha:

AccessFileName .htaccess
    
por 09.07.2015 / 09:45