Apache-de HTTP-ni HTTPS-e nädip gönükdirmeli
HTTP (Hyper Text Transfer Protocol), Bütindünýä Kerebi (WWW) -da maglumat aragatnaşygy üçin meşhur we esasy protokol; adatça web brauzeri bilen web faýllaryny saklaýan serweriň arasynda. HTTPS bolsa HTTP-iň ygtybarly wersiýasy bolsa, ahyrynda “S” “Howpsuz” diýmekdir.
HTTPS ulanyp, brauzeriňiz bilen web serweriň arasyndaky ähli maglumatlar şifrlenen. Bu gollanma, Linux-daky Apache HTTP serwerinde HTTP-ni HTTPS-e nädip gönükdirmelidigini görkezer.
Domeniňiz üçin HTTPS gönükdirme üçin Apache HTTP gurmazdan ozal, SSL şahadatnamasynyň gurnalandygyna we Apache-de mod_rewrite açykdygyna göz ýetiriň. Apache-de SSL-i nädip gurup boljakdygy barada has giňişleýin maglumat üçin aşakdaky gollanmalara serediň.
- Öz-özüňe gol çekilen SSL şahadatnamalaryny we Apache üçin açarlary nädip döretmeli
- CentOS/RHEL 7-de SSL şahadatnamasyny nädip şifrlemeli?
- Debian/Ubuntu-da SSL şifrlemek şahadatnamasyny nädip gurmaly
.Htaccess faýly ulanyp, HTTP-ni Apache-de HTTPS-e gönükdiriň
Bu usul üçin mod_rewrite açykdygyna göz ýetiriň, ýogsam Ubuntu/Debian ulgamlarynda şunuň ýaly işlediň.
$ sudo a2enmod rewrite [Ubuntu/Debian]
CentOS/RHEL ulanyjylary üçin httpd.conf-da aşakdaky setiriň bardygyna göz ýetiriň (mod_rewrite goldawy - deslapky görnüşde işledilýär).
LoadModule rewrite_module modules/mod_rewrite.so
Indi diňe domen kök katalogyňyzda .htaccess faýlyny redaktirlemeli ýa-da döretmeli we http-ni https-a gönükdirmek üçin bu setirleri goşmaly.
RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
Indi bir myhman http://www.yourdomain.com
ýazsa, serwer awtomatiki usulda HTTP-ni HTTPS https://www.yourdomain.com
ugrukdyrar.
HTTP-ni Apache Wirtual Host-da HTTPS-e gönükdiriň
Mundan başga-da, ähli web trafigini HTTPS ulanmaga mejbur etmek üçin wirtual host faýlyňyzy hem düzüp bilersiňiz. Adatça, SSL şahadatnamasy açyk bolsa, wirtual host konfigurasiýasynyň iki möhüm bölümi bar; birinjisi howpsuz däl 80 port üçin konfigurasiýalary öz içine alýar.
Ikinjisi, ygtybarly 443 port üçin. HTTP-ni web sahypaňyzyň ähli sahypalary üçin HTTPS-e gönükdirmek üçin ilki bilen degişli wirtual host faýly açyň. Soňra aşakdaky konfigurasiýany goşup üýtgediň.
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>
Faýly ýazdyryň we ýapyň, soňra şuňa meňzeş HTTP bölümini täzeden açyň.
$ sudo systemctl restart apache2 [Ubuntu/Debian] $ sudo systemctl restart httpd [RHEL/CentOS]
iň ýönekeý we has ygtybarly bolany üçin iň maslahat berilýän çözgüt.
Apache HTTP serweriniň howpsuzlyk berkitme makalalarynyň bu peýdaly görnüşini okamak isläp bilersiňiz:
- 25 Peýdaly Apache '.htaccess' Web sahypalaryny goramak we özleşdirmek hileleri
- .htaccess faýly ulanyp, Apache-de web kataloglaryny nädip goramaly?
- Apache wersiýa belgisini we beýleki duýgur maglumatlary nädip gizlemeli
- Apache-ni Mod_Security we Mod_evasive ulanyp, zalym güýçlerden ýa-da DDoS hüjümlerinden goraň
Bu hemmesi! Bu gollanma bilen baglanyşykly pikirleriňizi paýlaşmak üçin aşakdaky seslenme formundan peýdalanyň. Hemişe linux-console.net bilen baglanyşykda bolmagy ýatdan çykarmaň.