Nano Hash - криптовалюты, майнинг, программирование

Как отредактировать htaccess, чтобы перенаправить весь трафик на защищенный домен www

Как добиться следующего:

  • перенаправить все http://domain.com на https://www.domain.com
  • перенаправить все http:// www.domain .com на https:// www.domain .com
  • перенаправить все https://домен .com на https://www.domain .com

Таким образом, весь мой трафик, будь то без www или с www, будет перенаправлен на домен SSL с www.

Редактировать:

Кроме того, у меня есть 2 субдомена, которые работают на http, поэтому я хочу добиться вышеуказанного, а также сохранить 2 субдомена свободными от вышеуказанного правила перенаправления.


  • Возможный дубликат http://stackoverflow.com/questions/29522778/how-to-redirect-from-www-to-https-www-with-htacces 30.01.2016
  • К вашему сведению (из документации htaccess Apache 2.4): You should avoid using .htaccess files completely if you have access to httpd main server config file. Using .htaccess files slows down your Apache http server. 30.01.2016
  • @Croises - ссылка, которую вы дали, предназначена только для www на https www. как насчет двух других без-www на https-www и https-без-www на https-www? 30.01.2016
  • @vallismortis - у меня нет доступа к файлу конфигурации основного сервера httpd, поэтому я попросил решение для htaccess. 30.01.2016

Ответы:


1

Вы можете использовать следующий код в Root/.htaccess:

RewriteEngine on
#Http to https
#Exclude subdomains
RewriteCond %{HTTP_HOST} !^(sub1|sub2)
RewriteCond %{HTTP_HOST} ^(www\.)?example.com$ [NC]
RewriteCond %{HTTPS} off
RewriteRule ^ https://www.example.com%{REQUEST_URI} [NC,L,R]
#add www on ssl
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [NC,L,R]

Это перенаправит:

на ssl

А второе правило добавит www к не www запросам по ssl, перенаправлению:

to

30.01.2016
  • Это именно то, что я искал. 30.01.2016

  • 2

    Во-первых, вы можете отредактировать файл httpd.conf и добавить его на серверы :80.

     <IfModule mod_rewrite.c>
                RewriteEngine On
                RewriteCond %{HTTP_HOST} ^domain.com$ [NC]
                RewriteRule ^(.*)$ https://www.domain.com$1 [L,R=301]
     </IfModule>
    

    Во всяком случае, это на .htaccess будет делать то же самое

    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^www.domain\.com [NC]
    RewriteCond %{HTTP_HOST} !^$
    RewriteRule ^/?(.*)      https://www.domain.com/$1 [L,R,NE]
    

    Кроме того, вы можете добавить в свой файл vhost что-то вроде

    Redirect permanent / https://www.domain.com/

    И в вашем vhost_ssl:

     <IfModule mod_rewrite.c>
                    RewriteEngine On
                    RewriteCond %{HTTP_HOST} ^domain.com$ [NC]
                    RewriteRule ^(.*)$ https://www.domain.com$1 [L,R=301]
    </IfModule>
    
    30.01.2016
  • Перенаправление всех http://domain.com на https://www.domain.com и перенаправление всех https://domain.com на https://www.domain.com работает. Однако перенаправление всех http://www.domain.com на https://www.domain.com не работает для вышеупомянутого кода htaccess. 30.01.2016
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..