WebSite X5Help Center

 
Aleksander D.
Aleksander D.
User

Dyrektywa w pliku .htaccess - wymuszenie https://  pl

Автор: Aleksander D.
Просмотрено 2710, Подписчики 1, Размещенный 0  

Uzyskanie pomocy od home.pl graniczy z cudem, więc proszę kolegów o pomoc w połączeniu paru przekierowań. Dotychczas mój plik wyglądał następująco.


RewriteEngine On
RewriteCond %{HTTP_HOST} ^XXXXXX.pl$ [NC]
RewriteRule ^(.*)$ http://www.XXXXXX.pl/$1 [R=301,L]
RewriteRule ^index.(php|html|htm)$ / [R=301,L]
RewriteRule ^([a-z0-9-_]+)/index.(php|html|htm)$ /$1/ [R=301,L]
RewriteRule ^(.+)/$ /$1 [L,R=301]
<IfModule mod_headers.c>
<FilesMatch "\.(jpg|jpeg|png|gif|swf|JPG)$">
Header set Cache-Control "max-age=700000, public"
</FilesMatch>
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=700000, private"
</FilesMatch>
</IfModule>


Niestety aby zadziałał certyfikat muszę dodać przekierowanie z http:// na https://
Strona pomocy home.pl

https://pomoc.home.pl/baza-wiedzy/przekierowanie-301-w-pliku-htaccess/#www

mówi aby zastosować wpis:

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

I pozostało to teraz ładnie połączyć.

Размещено
19 Ответы - 5 Полезно
Darek J.
Darek J.
User

Witaj 

A spróbuj takiego wpisu:

  1. RewriteCond %{HTTPS} off
  2. # Najpierw na HTTPS:
  3. RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
  4. # Teraz bez www na www (to jest opcjonalne)
  5. RewriteCond %{HTTP_HOST} !^www\.
  6. RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Czyli powinno to wyglądać u Ciebie tak:

RewriteEngine On

RewriteCond %{HTTPS} off
# Najpierw na HTTPS:
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Teraz bez www na www (to jest opcjonalne)
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301
RewriteRule ^index.(php|html|htm)$ / [R=301,L]
RewriteRule ^([a-z0-9-_]+)/index.(php|html|htm)$ /$1/ [R=301,L]
RewriteRule ^(.+)/$ /$1 [L,R=301]

<IfModule mod_headers.c>
<FilesMatch "\.(jpg|jpeg|png|gif|swf|JPG)$">
Header set Cache-Control "max-age=700000, public"
</FilesMatch>
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=700000, private"
</FilesMatch>
</IfModule>

Pozdrawiam  

Читать больше
Размещено От Darek J.
Darek J.
Darek J.
User

RewriteRule ^(.*)https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301

"zawias" się nie zamknął 

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

Читать больше
Размещено От Darek J.
Aleksander D.
Aleksander D.
User
Автор

Nie pisałem, ale po cichu liczyłem na Twoją podpowiedź... dam znać co z tego wyszło

Читать больше
Размещено От Aleksander D.
Aleksander D.
Aleksander D.
User
Автор

Darku a mogę prosić o gotowca powiedzmy dla strony

www.XYZ.pl

chyba błędnie wpisuje adres w dyrektywie

Читать больше
Размещено От Aleksander D.
Darek J.
Darek J.
User
Aleksander D.
chyba błędnie wpisuje adres w dyrektywie

Nic nie trzeba wpisywać 

To co podałem "wklejasz" i nic nie zmieniasz  

Читать больше
Размещено От Darek J.
Aleksander D.
Aleksander D.
User
Автор

Darku strzał w dziesiątkę


DZIĘKI

Читать больше
Размещено От Aleksander D.
Aleksander D.
Aleksander D.
User
Автор

Darku

RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteRule ^index.(php|html|htm)$ / [R=301,L]

a możesz nanieść poprawki aby było bez www 

Читать больше
Размещено От Aleksander D.
Darek J.
Darek J.
User

Witaj Aleksander 

Najpierw zmieniasz:

#bez www
RewriteCond %{HTTP_HOST} ^www.domena.pl$ [NC]
RewriteRule ^(.*)$ http://domena.pl/$1 [R=301,L]

i później dopisujesz (pod spodem):

#Przekierowanie na https
RewriteCond %{HTTPS} !^on$
RewriteRule ^(.*)$ https://domena.pl/$1 [R=301,L]

oczywiście adres domena.pl zamieniasz na własny  

Читать больше
Размещено От Darek J.
Aleksander D.
Aleksander D.
User
Автор

A jest możliwość bez adresów strony tak jak podałeś mi wcześniej tylko z www???

RewriteEngine On

RewriteCond %{HTTPS} off
# Najpierw na HTTPS:
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Teraz bez www na www (to jest opcjonalne)
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteRule ^index.(php|html|htm)$ / [R=301,L]
RewriteRule ^([a-z0-9-_]+)/index.(php|html|htm)$ /$1/ [R=301,L]
RewriteRule ^(.+)/$ /$1 [L,R=301]

<IfModule mod_headers.c>
<FilesMatch "\.(jpg|jpeg|png|gif|swf|JPG)$">
Header set Cache-Control "max-age=700000, public"
</FilesMatch>
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=700000, private"
</FilesMatch>
</IfModule>

Читать больше
Размещено От Aleksander D.
Darek J.
Darek J.
User
Aleksander D.
A jest możliwość bez adresów strony tak jak podałeś mi wcześniej tylko z www??? ...

a w czym Ci adres "przeszkadza"?  

Читать больше
Размещено От Darek J.
Aleksander D.
Aleksander D.
User
Автор

Jak dobrze pamiętam przy tak długiej dyrektywie był problem z certyfikatem i wtedy dostałem od Kolegi (i tu kolejny raz dziękuje) gotowca bez adresów. .. Tylko w tym przypadku te straszne www

Читать больше
Размещено От Aleksander D.
Aleksander D.
Aleksander D.
User
Автор

Sprawdziłem i nie jest to problem z certyfikatem

tylko z przekierowaniem strony z www na bez www


Darek czy możesz zmodyfikować wcześniejszą dyrektywę która działa bez zarzutu tylko z www???

Aleksander D.
A jest możliwość bez adresów strony tak jak podałeś mi wcześniej tylko z www??? RewriteEngine On RewriteCond %{HTTPS} off # Najpierw na HTTPS: RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] # Teraz bez www na www (to jest opcjonalne) RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteRule ^index.(php|html|htm)$ / [R=301,L] RewriteRule ^([a-z0-9-_]+)/index.(php|html|htm)$ /$1/ [R=301,L] RewriteRule ^(.+)/$ /$1 [L,R=301] <IfModule mod_headers.c> <FilesMatch "\.(jpg|jpeg|png|gif|swf|JPG)$"> Header set Cache-Control "max-age=700000, public" </FilesMatch> <FilesMatch "\.(css|js)$"> Header set Cache-Control "max-age=700000, private" </FilesMatch> </IfModule>
Читать больше
Размещено От Aleksander D.
Aleksander D.
Aleksander D.
User
Автор

Ładnie wyszła w cytacie

RewriteEngine On

RewriteCond %{HTTPS} off
# Najpierw na HTTPS:
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Teraz bez www na www (to jest opcjonalne)
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteRule ^index.(php|html|htm)$ / [R=301,L]
RewriteRule ^([a-z0-9-_]+)/index.(php|html|htm)$ /$1/ [R=301,L]
RewriteRule ^(.+)/$ /$1 [L,R=301]

<IfModule mod_headers.c>
<FilesMatch "\.(jpg|jpeg|png|gif|swf|JPG)$">
Header set Cache-Control "max-age=700000, public"
</FilesMatch>
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=700000, private"
</FilesMatch>
</IfModule>

Читать больше
Размещено От Aleksander D.
Darek J.
Darek J.
User

Witaj Aleksander 

Podeślij mi na e-mail plik .htaccess z wpisanym poprawnie/prawidłowym adresem domeny 
Czyli tym co "nie działa" prawidłowo 

darektiger[małpa]o2[kropka]pl  

Читать больше
Размещено От Darek J.
Aleksander D.
Aleksander D.
User
Автор

poszło

Читать больше
Размещено От Aleksander D.
Darek J.
Darek J.
User

Według moich "sprawdzonych" testów 
wszystko działa poprawnie 

Tak dla ogólnej wiadomości 
Jak robicie testy stron 
to róbcie je na kilka sposobów, kilkoma "audytorami" itp 
a nie trzymajcie się tylko "jednego wyniku"  

Читать больше
Размещено От Darek J.
Aleksander D.
Aleksander D.
User
Автор

Tak przekierowanie fizycznie działa.
Tylko w przypadku innej strony z https:/www podany audyt odczytuje ją poprawnie, a przy przekierowaniu bez www odczytuje jako brak przekierowania.

Pytanie które mnie nurtuje to czy google nie potraktuje tego jak duplicate content

Читать больше
Размещено От Aleksander D.
Darek J.
Darek J.
User
Aleksander D.
...Pytanie które mnie nurtuje to czy google nie potraktuje tego jak duplicate content...

No to i wiele innych pytań uzyskasz odpowiedź wchodząc na swoje konto
w Search Console 

https://www.google.com/webmasters/tools/home?hl=pl  

Читать больше
Размещено От Darek J.