Kā novirzīt HTTP uz HTTPS Apache


HTTP (Hyper Text Transfer Protocol) ir populārs, kā arī fundamentāls protokols datu saziņai globālajā tīmeklī (WWW); parasti starp tīmekļa pārlūku un serveri, kurā tiek glabāti tīmekļa faili. Tā kā HTTPS ir droša HTTP versija, kur “S” beigās apzīmē “Secure”.

Izmantojot HTTPS, visi dati starp jūsu pārlūkprogrammu un tīmekļa serveri tiek šifrēti, tādējādi droši. Šī apmācība parādīs, kā novirzīt HTTP uz HTTPS Linux Apache HTTP serverī.

Pirms domēnam varat iestatīt Apache HTTP uz HTTPS novirzīšanu, pārliecinieties, vai esat instalējis SSL sertifikātu un Apache ir iespējots mod_rewrite. Lai iegūtu papildinformāciju par SSL iestatīšanu Apache, skatiet šīs rokasgrāmatas.

  1. Kā izveidot pašparakstītus SSL sertifikātus un atslēgas Apache
  2. Kā instalēt Let’s Encrypt SSL Certificate uz CentOS/RHEL 7
  3. Kā instalēt Let’s Encrypt SSL Certificate uz Debian/Ubuntu

Pārvirziet HTTP uz HTTPS Apache, izmantojot .htaccess failu

Šai metodei pārliecinieties, ka mod_rewrite ir iespējots, pretējā gadījumā iespējojiet to Ubuntu/Debian sistēmās.

$ sudo a2enmod rewrite	[Ubuntu/Debian]

CentOS/RHEL lietotājiem pārliecinieties, ka jūsu vietnē httpd.conf ir šāda rinda (mod_rewrite atbalsts - pēc noklusējuma iespējots).

LoadModule rewrite_module modules/mod_rewrite.so

Tagad jums vienkārši jārediģē vai jāizveido .htaccess fails domēna saknes direktorijā un jāpievieno šīs rindiņas, lai novirzītu http uz https.

RewriteEngine On 
RewriteCond %{HTTPS}  !=on 
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L] 

Tagad, kad apmeklētājs ieraksta http://www.yourdomain.com , serveris automātiski novirza HTTP uz HTTPS https://www.yourdomain.com .

Pārvirziet HTTP uz HTTPS Apache virtuālajā resursdatorā

Turklāt, lai piespiestu visu tīmekļa trafiku izmantot HTTPS, varat arī konfigurēt virtuālo resursdatora failu. Parasti, ja ir iespējots SSL sertifikāts, ir divas svarīgas virtuālā resursdatora konfigurācijas sadaļas; pirmais satur nedrošā 80. porta konfigurācijas.

Otrais attiecas uz drošu portu 443. Lai novirzītu HTTP uz HTTPS visām jūsu vietnes lapām, vispirms atveriet atbilstošo virtuālā resursdatora failu. Pēc tam modificējiet to, pievienojot konfigurāciju zemāk.

NameVirtualHost *:80
<VirtualHost *:80>
   ServerName www.yourdomain.com
   Redirect / https://www.yourdomain.com
</VirtualHost>

<VirtualHost _default_:443>
   ServerName www.yourdomain.com
   DocumentRoot /usr/local/apache2/htdocs
   SSLEngine On
# etc...
</VirtualHost>

Saglabājiet un aizveriet failu, pēc tam restartējiet HTTP sadalītāju šādi.

$ sudo systemctl restart apache2     [Ubuntu/Debian]
$ sudo systemctl restart httpd	     [RHEL/CentOS]

Lai gan ir visieteicamākais risinājums, jo tas ir vienkāršāks un drošāks.

Iespējams, vēlēsities izlasīt šos noderīgos Apache HTTP servera drošības uzlabošanas rakstu sortimentu:

  1. 25 noderīgi Apache ‘.htaccess’ triki vietņu drošībai un pielāgošanai
  2. Kā ar paroli aizsargāt tīmekļa direktorijus Apache, izmantojot .htaccess failu
  3. Kā paslēpt Apache versijas numuru un citu sensitīvu informāciju
  4. Aizsargājiet Apache pret rupju spēku vai DDoS uzbrukumiem, izmantojot Mod_Security un Mod_evasive

Tas ir viss! Lai dalītos domās par šo rokasgrāmatu, izmantojiet tālāk sniegto atsauksmju veidlapu. Atcerieties vienmēr uzturēt savienojumu ar linux-console.net.