Kaip peradresuoti HTTP į HTTPS „Apache“.


HTTP (Hyper Text Transfer Protocol) yra populiarus ir pagrindinis duomenų perdavimo pasauliniame žiniatinklyje (WWW) protokolas ); paprastai tarp žiniatinklio naršyklės ir serverio, kuriame saugomi žiniatinklio failai. Tuo tarpu HTTPS yra saugi HTTP versija, kur „S“ pabaigoje reiškia „Saugus“.

Naudojant HTTPS, visi duomenys tarp naršyklės ir žiniatinklio serverio yra užšifruojami, todėl jie yra saugūs. Ši mokymo programa parodys, kaip peradresuoti HTTP į HTTPS „Apache“ HTTP serveryje sistemoje „Linux“.

Prieš nustatydami „Apache“ HTTP į HTTPS peradresavimą savo domene, įsitikinkite, kad įdiegtas SSL sertifikatas ir mod_rewrite yra įjungtas „Apache“. Norėdami gauti daugiau informacijos apie tai, kaip nustatyti SSL „Apache“, žr. šiuos vadovus.

  1. Kaip sukurti savarankiškai pasirašytus SSL sertifikatus ir „Apache“ raktus
  2. Kaip įdiegti Let’s Encrypt SSL sertifikatą CentOS/RHEL 7
  3. Kaip įdiegti Let's Encrypt SSL sertifikatą „Debian“/„Ubuntu“.

Peradresuokite HTTP į HTTPS „Apache“ naudodami .htaccess failą

Taikydami šį metodą įsitikinkite, kad įjungtas mod_rewrite, kitu atveju įgalinkite jį taip Ubuntu/Debian sistemose.

sudo a2enmod rewrite	[Ubuntu/Debian]

Jei naudojate CentOS/RHEL naudotojus, įsitikinkite, kad httpd.conf turi šią eilutę (mod_rewrite palaikymas – įjungta pagal numatytuosius nustatymus).

LoadModule rewrite_module modules/mod_rewrite.so

Dabar tereikia redaguoti arba sukurti .htaccess failą savo domeno šakniniame kataloge ir pridėti šias eilutes, kad nukreiptumėte http į https.

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

Dabar, kai lankytojas įveda http://www.yourdomain.com, serveris automatiškai nukreips HTTP į HTTPS https://www.yourdomain.com.

Peradresuokite HTTP į HTTPS „Apache Virtual Host“.

Be to, norėdami priversti visą žiniatinklio srautą naudoti HTTPS, taip pat galite sukonfigūruoti virtualiosios prieglobos failą. Paprastai, jei įjungtas SSL sertifikatas, yra dvi svarbios virtualiojo pagrindinio kompiuterio konfigūracijos sekcijos; pirmajame yra nesaugaus prievado 80 konfigūracijos.

Antrasis skirtas saugiam prievadui 443. Norėdami peradresuoti HTTP į HTTPS visuose savo svetainės puslapiuose, pirmiausia atidarykite atitinkamą virtualiosios prieglobos failą. Tada pakeiskite jį pridėdami toliau pateiktą konfigūraciją.

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>

Išsaugokite ir uždarykite failą, tada iš naujo paleiskite HTTP serverį taip.

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

Nors yra labiausiai rekomenduojamas sprendimas, nes jis paprastesnis ir saugesnis.

Galbūt norėsite perskaityti šiuos naudingus „Apache“ HTTP serverio saugos stiprinimo straipsnius:

  1. 25 naudingos „Apache“ „.htaccess“ gudrybės, skirtos svetainėms apsaugoti ir tinkinti
  2. Kaip apsaugoti „Apache“ žiniatinklio katalogus slaptažodžiu naudojant .htaccess failą
  3. Kaip paslėpti „Apache“ versijos numerį ir kitą jautrią informaciją
  4. Apsaugokite Apache nuo Brute Force arba DDoS atakų naudodami Mod_Security ir Mod_evasive

Tai viskas! Jei norite pasidalinti mintimis apie šį vadovą, naudokite toliau pateiktą atsiliepimų formą. Ir nepamirškite visada palaikyti ryšį su linux-console.net.