Strona 1 z 1

Apache2 - reguła przekierowania nie działa

: 19 lip 2019, 16:31
autor: yasione
Sam nie potrafię pisać reguł apache.

Potrzebuję przekierować wszystkie adresy na https bez www. Posiadając wyłącznie jeden adres

Obecnie:
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]

RewriteCond %{HTTP_HOST} ^www\.(.*)
RewriteRule ^.*$ https://%1/$1 [R=301,L]


Wyniki:

URL --> Resolved URL

http://domena.pl/ --> https://domena.pl/
http://www.domena.pl/ --> https://domena.pl/
https://domena.pl/ --> https://domena.pl/

Powyższe działają prawidłowo, jednak kiedy wpiszę adres https://www.domena.pl nie ma żadnego przekierowania, zostaje www...
https://www.domena.pl/ --> https://www.domena.pl/

Czacha dymi -.-

Re: Apache2 - reguła przekierowania nie działa

: 19 lip 2019, 17:01
autor: arecki

Re: Apache2 - reguła przekierowania nie działa

: 19 lip 2019, 20:39
autor: jacekalex
W Apachu 2.4 już nie trzeba rewrite używać, po protu na virtualhoście http:80 zrób przekierowanie 301 na
https://domena.tld/$REQUEST_URI
przez Redirect.

Re: Apache2 - reguła przekierowania nie działa

: 19 lip 2019, 21:17
autor: yasione
Jeżeli dobrze zrozumiałem to ma to wyglądać tak?:
<VirtualHost *:80>
ServerName domena.pl
DocumentRoot /katalog/

Redirect 301 https://www.domena.pl https://domena.pl/$REQUEST_URI

</VirtualHost>

Re: Apache2 - reguła przekierowania nie działa

: 19 lip 2019, 21:29
autor: yasione
Jak widzisz mam przekierowanie do https. Przeczytaj jeszcze raz zanim zaczniesz kopiować linki. Nawet kolorkami zaznaczyłem

Re: Apache2 - reguła przekierowania nie działa

: 19 lip 2019, 21:47
autor: jacekalex
yasione pisze: 19 lip 2019, 21:17 Jeżeli dobrze zrozumiałem to ma to wyglądać tak?:
<VirtualHost *:80>
ServerName domena.pl
DocumentRoot /katalog/

Redirect 301 https://www.domena.pl https://domena.pl/$REQUEST_URI

</VirtualHost>
Spróbuj tak:

Kod: Zaznacz cały

RedirectMatch 301 ^(.*)$ https://domena.pl/%{REQUEST_URI}
Z resztą zobacz w dokumentacji, dawno nie bawiłem się Apachem, wolę Nginxa.

Sznurki do Apacha:
https://httpd.apache.org/docs/2.4/expr.html
https://httpd.apache.org/docs/2.4/rewrite/avoid.html
https://httpd.apache.org/docs/2.4/mod/m ... irectmatch

PS:
TU masz gotowy przykład z użyciem Rewrite:
https://simonecarletti.com/blog/2016/08 ... ww-apache/

Pozdro

Re: Apache2 - reguła przekierowania nie działa

: 19 lip 2019, 22:29
autor: yasione
No właśnie czytam oficjalną stronę Apache od wczoraj. Już widziałem nawet dyrektywy " If " ale nie potrafię rozwiązać swojego problemu.

RedirectMatch 301 ^(.*)$ https://domena.pl/%{REQUEST_URI} Niestety nie przyniosło rezultatu =(

Ten gotowy przykład właśnie mam w ustawieniach, to ten sam, który widnieje w pierwszym poście.

nie wiem co jest... Może certbot gdzieś narozrabiał, albo gdzieś jakiś alias siedzi.
W każdym razie dziś już odpuszczę czytanie poradników bo mnie głowa już boli. Wstanę rano, będę walczył dalej...

jacekalex dzięki wielkie za chęci =)