http для https выдает .htaccess web.config хостинг global.asx windows - PullRequest
0 голосов
/ 17 октября 2018

Интересно, кто-нибудь может помочь?Мы хотели бы иметь возможность перенаправить наш сайт на версию https во всем мире.Сертификат SSL установлен, и версия https сайта работает и работает.Я пробовал следующие методы.

web.config в корне www.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
    <rewrite>
        <rules>
            <rule name="SSL" stopProcessing="true">
                <match url="^(.*)$"  />
                    <conditions>
                        <add input="{HTTP_X_FORWARDED_PROTO}" pattern="https" negate="true"/>
                    </conditions>
                <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>

.htaccess в корне www с включенной перезаписью URL на хостинг-провайдере.

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://mysitedomain.com/$1 [R=301,L]

Я перезаписал пул приложений после и изменил и удалил браузеркэш.Оба метода не работают.Есть ли в любом случае попытаться проверить любой метод, чтобы убедиться, что файл читается, так как он, кажется, ничего не делает.Можно ли попробовать с глобальной асой?Если вам нужна дополнительная информация, пожалуйста, спросите.

Отредактировано, чтобы предоставить больше информации о среде хостинга.Мы используем общую облачную хостинговую платформу под управлением Windows 2003 (она легко переключается между различными платформами), и доступ осуществляется через веб-портал.На сайте работает собственный пул приложений, который мы можем перерабатывать.Существует возможность активировать и деактивировать перезапись URL-адресов .. описание здесь.

Включение модуля «перезапись» позволит вам использовать функциональность стиля Apache mod_rewrite в файле .htaccess в Windows или в гибридной среде.режим сайта.Например, URL-адрес, такой как / store / products /levisions, можно переписать в /store.php?type=products&category=televisions для поисковой оптимизации.Для получения дополнительной информации см. Следующий внешний URL-адрес.

Я могу жестко закодировать перенаправление SSL на постраничной основе, но на глобальном уровне, независимо от того, что я пробую, является ли это web.config или.htaccess, похоже, не подхватывает.

Ответы [ 2 ]

0 голосов
/ 19 октября 2018

Могут быть разные способы сделать это.Просто перенаправьте в таких сценариях

<%
   If Request.ServerVariables("SERVER_PORT")=80 Then
      Dim strSecureURL
      strSecureURL = "https://"
      strSecureURL = strSecureURL & Request.ServerVariables("SERVER_NAME")
      strSecureURL = strSecureURL & Request.ServerVariables("URL")
      strSecureURL = strSecureURL & "?" & Request.ServerVariables("QUERY_STRING")
      Response.Redirect strSecureURL
   End If
%>

См. КАК: Использование ASP для принудительного использования SSL для определенных страниц

0 голосов
/ 17 октября 2018

Чтобы перенаправить сайт с HTTP на HTTPS, попробуйте выполнить следующее.

, если вы используете Linux & cPanel – Force HTTPS using .htaccess

RewriteCond %{HTTPS} !on [OR]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule (.*) https://www.domainname.com%{REQUEST_URI} [L,R=301]

И если вы используете Windows & Plesk – Force HTTPS using web.config

<configuration>
<system.webServer>
<rewrite>
    <rules>
       <rule name="HTTP to HTTPS redirect" stopProcessing="true"> 
         <match url="(.*)" /> 
         <conditions> 
           <add input="{HTTPS}" pattern="off" ignoreCase="true" />
         </conditions> 
         <action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" />
       </rule> 
    </rules>
</rewrite>
</system.webServer>
</configuration>

Не забудьте очистить кеш

...