HTTP į https apache peradresavimą

Centos trečiadienį su apache

Bandykite konfigūruoti automatinį peradresavimą iš http į https

 From manage.mydomain.com --- To ---> https://manage.mydomain.com 

Bandžiau į „httpd.conf“ įtraukti toliau pateiktą informaciją, tačiau jis neveikė

  RewriteEngine on ReWriteCond %{SERVER_PORT} !^443$ RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L] 

Bet kokios idėjos?

101
24 апр. Deano nurodė 24 Bal. 2013-04-24 22:23 '13, 22:23 pm 2013-04-24 22:23
@ 7 atsakymai

Aš tikrai sekiau šį pavyzdį ir jis dirbo už mane :)

 NameVirtualHost *:80 <VirtualHost *:80> ServerName mysite.example.com DocumentRoot /usr/local/apache2/htdocs Redirect permanent / https://mysite.example.com/ </VirtualHost> <VirtualHost _default_:443> ServerName mysite.example.com DocumentRoot /usr/local/apache2/htdocs SSLEngine On # etc... </VirtualHost> 

Tada atlikite:

/etc/init.d/httpd restart

158
24 апр. Deano atsakymas, pateiktas balandžio 24 d. 2013-04-24 23:35 '13, 11:35, 2013-04-24 23:35
 RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} 

http://www.sslshopper.com/apache-redirect-http-to-https.html

border=0

arba

http://www.cyberciti.biz/tips/howto-apache-force-https-secure-connections.html

80
24 апр. Atsakymą pateikė IdemeNaHavaj balandžio 24 d 2013-04-24 22:27 '13, 22:27 pm 2013-04-24 22:27

apache redirect http to https ir nusileidžiau čia. Tai aš padariau ubuntu:

1) Įgalinti modulius

 sudo a2enmod rewrite sudo a2enmod ssl 

2) Redaguokite svetainės konfigūraciją

Redaguoti failą

 /etc/apache2/sites-available/000-default.conf 

Turinys turi būti:

 <VirtualHost *:80> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} </VirtualHost> <VirtualHost *:443> SSLEngine on SSLCertificateFile <path to your crt file> SSLCertificateKeyFile <path to your private key file> # Rest of your site config # ... </VirtualHost> 

3) Paleiskite apache2

 sudo service apache2 restart 
58
03 нояб. Atsakymą pateikė Jossef Harush 03 lapkričio. 2014-11-03 18:49 '14 at 18:49 2014-11-03 18:49

Tiesą sakant, jūsų tema priklauso https://serverfault.com/ , tačiau vis tiek galite patikrinti šias .htaccess direktyvas:

 RewriteEngine on RewriteCond %{HTTPS} off RewriteRule ^(.*) https://%{HTTP_HOST}/$1 
7
24 апр. atsakymas pateikiamas 5 balandis 24 d. 2013-04-24 22:34 '13, 10:34 val. 2013-04-24 22:34

Jis dirbo man:

 RewriteCond %{HTTPS} =off RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L,R=301] 
1
05 апр. atsakymas pateikiamas Fint 05 balandžio. 2016-04-05 10:41 '16 at 10:41 am 2016-04-05 10:41

Šis kodas veikia man.

 # ----------port 80---------- RewriteEngine on # redirect http non-www to https www RewriteCond %{HTTPS} off RewriteCond %{SERVER_NAME} =example.com RewriteRule ^ https://www.%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent] # redirect http www to https www RewriteCond %{HTTPS} off RewriteCond %{SERVER_NAME} =www.example.com RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent] 

 # ----------port 443---------- RewriteEngine on # redirect https non-www to https www RewriteCond %{SERVER_NAME} !^www\.(.*)$ [NC] RewriteRule ^ https://www.%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent] 

1
05 апр. Atsakymą pateikė user7817632 05 Apr. 2017-04-05 04:53 '17 at 4:53 2017-04-05 04:53

Mod_rewrite naudojimas nėra rekomenduojamas būdas naudoti virtualųjį kompiuterį ir peradresuoti.

Jei linkę tai padaryti su mod_rewrite:

 RewriteEngine On # This will enable the Rewrite capabilities RewriteCond %{HTTPS} !=on # This checks to make sure the connection is not already HTTPS RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L] # This rule will redirect users from their original location, to the same location but using HTTPS. # ie http://www.example.com/foo/ to https://www.example.com/foo/ # The leading slash is made optional so that this will work either in # httpd.conf or .htaccess context 

Nuoroda: „ Httpd Wiki“ - „RewriteHTTPToHTTPS“

Jei ieškote 301 nuolatinio peradresavimo, peradresavimo vėliava turi būti tokia, kaip

  R=301 

todėl perrašymas bus panašus į

 RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R=301,L] 
1
15 нояб. atsakymą pateikė Vincy 15 nov. 2017-11-15 10:59 '17 10:59 2017-11-15 10:59

Kiti klausimai apie „ žymes arba Užduoti klausimą