Apache HTTP和HTTPS重定向

Apache HTTP和HTTPS重定向,apache,.htaccess,Apache,.htaccess,我正在尝试将Apache服务器配置为重定向: 非SSLhttp://support.nile.sd和SSLhttps://support.nile.sd到链接https://support.nile.sd/otrs/customer.pl,HTTP请求通过此force redirect.conf: $ vim /etc/httpd/conf.d/force-redirect.conf <VirtualHost *:80> ServerName s

我正在尝试将Apache服务器配置为重定向: 非SSL
http://support.nile.sd
和SSL
https://support.nile.sd
到链接
https://support.nile.sd/otrs/customer.pl
,HTTP请求通过此
force redirect.conf

    $ vim /etc/httpd/conf.d/force-redirect.conf
       <VirtualHost *:80>
        ServerName support.nile.sd
        Redirect permanent / https://support.nile.sd/otrs/customer.pl
       </VirtualHost>
$vim/etc/httpd/conf.d/force-redirect.conf
ServerName support.nile.sd
重定向永久/https://support.nile.sd/otrs/customer.pl
但是HTTPS不会被重定向!!它转到一个奇怪的页面,如下所示:

索引/

名称上次修改的尺寸说明


您能否告诉我如何重定向HTTPS,而不出现“太多重定向错误”

您只有端口80的规则,这是常规的http://protocol

我没有看到端口443的规则,即https

您需要添加以下内容

<VirtualHost *:443>
 ServerName support.nile.sd
 DocumentRoot /var/www/site
 SSLEngine on
 SSLCertificateFile /path/to/www_yoursite_com.crt
 SSLCertificateKeyFile /path/to/www_yoursite_com.key
 SSLCertificateChainFile /path/to/DigiCertCA.crt

 Redirect permanent / https://support.nile.sd/otrs/customer.pl
</VirtualHost>

ServerName support.nile.sd
DocumentRoot/var/www/site
斯伦金安
SSLCertificateFile/path/to/www\u yoursite\u com.crt
SSLCertificateKeyFile/path/to/www_yoursite_com.key
SSLCertificateChainFile/path/to/DigiCertCA.crt
重定向永久/https://support.nile.sd/otrs/customer.pl
现在它可以工作了,我在HTTP和HTTPS虚拟主机上使用了RedirectMatch表达式,如下所示,在同一个
force redirect.conf
文件中:

<VirtualHost *:80>
 ServerName support.nile.sd
 RedirectMatch permanent (.*)/$ https://support.nile.sd/otrs/customer.pl
</VirtualHost>

<VirtualHost *:443>
 ServerName support.nile.sd
 RedirectMatch permanent (.*)/$ https://support.nile.sd/otrs/customer.pl
 SSLEngine On
 SSLCertificateFile /etc/letsencrypt/live/support.nile.sd/certificate.pem
 SSLCertificateKeyFile /etc/letsencrypt/live/support.nile.sd/privatekey.pem
 SSLCertificateChainFile /etc/letsencrypt/live/support.nile.sd/chainofgod.pem   
</VirtualHost>

ServerName support.nile.sd
重定向匹配永久(.*)/$https://support.nile.sd/otrs/customer.pl
ServerName support.nile.sd
重定向匹配永久(.*)/$https://support.nile.sd/otrs/customer.pl
斯伦金安
SSLCertificateFile/etc/letsencrypt/live/support.nile.sd/certificate.pem
SSLCertificateKeyFile/etc/letsencrypt/live/support.nile.sd/privatekey.pem
SSLCertificateChainFile/etc/letsencrypt/live/support.nile.sd/chainofgod.pem

您的:443 virtualhost条目在哪里?端口:80虚拟条目将只响应http://nothttps://Using
重定向
此处将导致重定向循环。您需要使用
RedirectMatch
从/重定向到特定URL。是的,它导致了重定向循环,但不起作用。但正如我回答的那样,它对我起了作用。谢谢你的帮助:)