Diskuze: .htaccess a zmena http na https
Člen
Zobrazeno 18 zpráv z 18.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Zkus tenhle třeba ti to pomůže
RewriteEngine On
RewriteBase /
RewriteCond %{ENV:HTTPS} !^.*on
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
martin.93:
Ďakujem, skúsil som a správa sa to stále rovnako.
Teda https beží správne, ale prepis dynamickej url na statickú nejde.
Mám to na Websupporte, postupoval som podľa ich návodu (bod 2. a) ):
https://www.websupport.sk/…ifik%C3%A1tu
Čiže keď to zhrniem, ak web beží na http, prepis dynamických url na
statické funguje správne.
Akonáhle doplním kód so zmenou na https, stránka beží na https, ale zmena
dynamických url na statické prestane fungovať
Jak vypadá celý htaccess (nebo alespoň naše https a rewrite část, pokud je zbytek tajný)?
mozna to prehodit misty? nejdriv https potom prepis? jen tak me to napadlo
Toto je celý .htaccess:
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
RewriteEngine On
RewriteCond %{QUERY_STRING} (.+)
RewriteRule cat_(.*).html index.php?act=viewCat&catId=$1&%1 [L]
RewriteRule cat_(.*).html index.php?act=viewCat&catId=$1 [L]
RewriteCond %{QUERY_STRING} (.+)
RewriteRule prod_(.*).html index.php?act=viewProd&productId=$1&%1 [L]
RewriteRule prod_(.*).html index.php?act=viewProd&productId=$1 [L]
RewriteCond %{QUERY_STRING} (.+)
RewriteRule info_(.*).html index.php?act=viewDoc&docId=$1&%1 [L]
RewriteRule info_(.*).html index.php?act=viewDoc&docId=$1 [L]
RewriteCond %{QUERY_STRING} (.+)
RewriteRule tell_(.*).html index.php?act=taf&productId=$1&%1 [L]
RewriteRule tell_(.*).html index.php?act=taf&productId=$1 [L]
Skúšal som to prehodiť a vôbec to nezaberá. Slále sa to správa rovnako
Zkus odebrat 1x RewriteEngine On(to druhe)
Skúsil som a nepomohlo
Tak vás všetkých zdravím páni.
Nakoniec som sa rozhodol pátrať v PHP kóde môjho webu a v súbore nazvanom
xtpl.php som narazil na tento kód:
/* <rf> search engine friendly mod */
global $glob, $config;
include_once($glob['rootDir']."/includes/sef_urls.inc.php");
$copy = $this->text($bname);
if(!detectSSL()) {
$copy = sef_rewrite_urls($copy);
}
echo $copy;
/* <rf> end mod */
Jednoducho som zmenil zápornú podmienku na kladnú:
if(detectSSL()) {
A ono to funguje.
Takže nakoniec problém nebol v samotnom .htaccess.
Viem, že moje riešenie je amatérske v rámci mojich veľmi obmedzených
znalostí PHP, ale zatiaľ funguje.
Tak idem skúšať ďalej, či je všetko OK.
Ďakujem vám všetkým za pomoc
Ešte ma predsa len napadla jedna vec.
Kvôli zamedzeniu duplicity som celý web presmeroval na verziu s www týmto
kódom:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domena.sk [NC]
RewriteRule ^(.*)$ http://www.domena.sk/$1 [L,R=301]
Jednu url však potrebujem mať bez www, konkrétne: "https://domena.sk/cart.php?act=step4"
Neviete prosím, ako to spraviť v .htaccess?
Ďakujem.
Proč přesměrovávat na www a né na verzi bez www? Měl jsem vždy problémy s www verzi(např. cloudflare a https)
Ahoj, úprimne sám neviem. Prečítal som si veľa článkov čo je lepšie z pohľadu SEO a niektoré preferovali verziu s www kvôli tomu, že väčšina ľudí je jednoducho na to zvyknutá. Keď som si spravil analýzu najznámejších zahraničných a domácich webov, takmer všetky sú s www (amazon, facebook, alza, mall, wikipedia, ebay, aliexpress, paypal atď.). To je môj jediný dôvod.
Z hlediska SEO mezi oběma variantami není žádný rozdíl, jde pouze o to co preferuje webmaster.
Z technického hlediska pro www je lepší práce s cookinami kvůli případným subdoménám, apod..
Z praktického/uživatelského hlediska většina lidí preferuje bez www kvůli zapamatovatelnosti.
OK páni a keď sa teda vrátim k .htaccess, je možné celý web presmerovať na www a len jednu konkrétnu url bez www?
Přidat rewrite condition
RewriteCond %{HTTP_HOST} !^domena.sk [NC]
Zobrazeno 18 zpráv z 18.