Fórum Root.cz
		Hlavní témata => Server => Téma založeno: ProsteMajkl  18. 03. 2021, 18:02:54
		
			
			- 
				Ahoj kamarádi,
 
 na úvod připnu screen struktury mého adresáře s web projektem.
 (https://i.imgur.com/niPXt82.png)
 
 V .htaccess v kořenovém adresáři, tedy v -www je následující kód.
 RewriteEngine on
 
 # REDIRECT WEB PROJECT TO "public" FOLDER
 RewriteCond %{REQUEST_URI} !^public
 RewriteRule ^(.*)$ public/$1 [L]
 
 # REQUIRE HTPP"S"
 RewriteCond %{HTTPS} !on
 RewriteCond %{HTTP:X-Forwarded-Proto} !=https
 RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [L,QSA,NE]
 Header set Content-Security-Policy "upgrade-insecure-requests;"
 
 A v tom druhém o složku dále, tedy v -www --public je další .htaccess, kde je následující
 RewriteEngine On
 RewriteBase /
 
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ index.php?$1 [L,QSA]
 K problému. Když přistoupím přímo na web https://domena.cz (httpS) tak se vše zobrazuje v pořádku. Načte se má home page šablona.
 
 Když ale jdu na http bez s na konci, tedy http://domena.cz/ web mne sice v pořádku přesměruje na httpS ale ještě do public, tedy na https://domena.cz/public/ a to mi potom prohlížeč hodí 404 not found.
 
 Prosím, pomůžete mi upravit .htaccess tak, aby přesměrovával na httpS ale ne až do public? Děkuji moc.
- 
				Tak jsem to vyřešil. Problém vůbec nesouvisel s http nebo https ale s tím, jestli jste zdali www nebo bez www. Přidal jsem kód pro přesměrování na www následujícím kódem
 RewriteCond %{HTTP_HOST} ^domena\.cz [NC]
 RewriteRule ^(.*)$ https://www.domena.cz/$1 [L,R=301]
a vše funguje jak má :)
- 
				A proc ten redirect resite na urovni htaccess a nenastavite to primo v konfiguraci virtualhosta?