<?xml version="1.0"?>
<rss version="2.0"><channel><title>Centrum podpory: Centrum podpory</title><link>https://kb.exohosting.sk/centrum-podpory/cms/laravel/?d=1</link><description>Centrum podpory: Centrum podpory</description><language>sk</language><item><title>Nastavenie .htaccess pre Laravel</title><link>https://kb.exohosting.sk/centrum-podpory/cms/laravel/nastavenie-htaccess-pre-laravel-r215/</link><description><![CDATA[
<p><img src="https://kb.exohosting.sk/uploads/cmsrecords/monthly_2023_08/exo-logo.png.54af7910fe0e0ac3be7261d5a66099eb.png" /></p>
<div>
	<div class="kb-title">
		<p>
			Nastavenie .htaccess pre Laravel na subdoméne
		</p>
	</div>

	<div>
		 
	</div>
</div>

<p>
	Ak používate <strong>Laravel na subdoméne</strong> (<strong>public_html/_sub</strong>) a nefunguje vám správne načítavanie podstránok, zrejme bude problém v nastaveniach konfiguračného súboru <strong>.htaccess</strong> v adresári <strong>/public/</strong> v rámci danej subdomény.
</p>

<p>
	Odporúčame používať tieto pravidlá:
</p>

<p>
	<br type="_moz">
	 
</p>

<pre class="ipsCode prettyprint lang-latex prettyprinted" id="ips_uid_4109_12" style=""><span class="pln"># Redirect Trailing Slashes If Not A Folder...
RewriteCond </span><span class="com">%{REQUEST_FILENAME} !-d</span><span class="pln">
RewriteRule ^</span><span class="pun">(</span><span class="pln">.*</span><span class="pun">)</span><span class="pln">/</span><span class="typ">$</span><span class="pln"> /</span><span class="typ">$</span><span class="pln">1 </span><span class="pun">[</span><span class="pln">L,R</span><span class="pun">=</span><span class="pln">301</span><span class="pun">]</span><span class="pln">

# Handle Front Controller...
RewriteCond </span><span class="com">%{REQUEST_FILENAME} !-d</span><span class="pln">
RewriteCond </span><span class="com">%{REQUEST_FILENAME} !-f</span><span class="pln">
RewriteRule ^ /index.php </span><span class="pun">[</span><span class="pln">L</span><span class="pun">]</span></pre>

<p>
	 
</p>

<p>
	Súbor <strong>.htaccess</strong> s týmto obsahom uložte do adresára <strong>/public/</strong> a stránka by mala fungovať. Nemýľte si adresár <strong>/public/</strong>, ktorý je v rámci <strong>Laravel</strong> s koreňovým adresárom <strong>/public_html/</strong>.
</p>

<p>
	 
</p>

<p>
	 
</p>

<div>
	<div class="kb-title">
		<p>
			Nastavenie Laravel na subdoméne pri vlastnom webroote
		</p>
	</div>

	<div>
		 
	</div>
</div>

<p>
	Ak máte <strong>Laravel na subdoméne</strong> a popritom máte v <strong>/public_html/</strong> nastavený <strong>vlastný webroot</strong> (adresár <strong>/webroot/</strong> obsahuje webovú stránku) tak skúste tieto úpravy súborov <strong>.htaccess</strong>:
</p>

<p>
	 
</p>

<p>
	<span style="font-size:20px;"><strong>.htaccess v /public_html/</strong></span><br type="_moz">
	 
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted" id="ips_uid_4109_8" style=""><span class="com"># Uncomment the following to prevent the httpoxy vulnerability</span><span class="pln">
</span><span class="com"># See: https://httpoxy.org/</span><span class="pln">
</span><span class="com">#&lt;IfModule mod_headers.c&gt;</span><span class="pln">
</span><span class="com">#    RequestHeader unset Proxy</span><span class="pln">
</span><span class="com">#&lt;/IfModule&gt;</span><span class="pln">

</span><span class="typ">RewriteEngine</span><span class="pln"> </span><span class="typ">On</span><span class="pln">
</span><span class="typ">RewriteCond</span><span class="pln"> </span><span class="pun">%{</span><span class="pln">HTTP</span><span class="pun">:</span><span class="pln">X</span><span class="pun">-</span><span class="typ">Forwarded</span><span class="pun">-</span><span class="typ">Proto</span><span class="pun">}</span><span class="pln"> </span><span class="pun">!</span><span class="pln">https
</span><span class="typ">RewriteRule</span><span class="pln"> </span><span class="pun">(.*)</span><span class="pln"> https</span><span class="pun">:</span><span class="com">//%{HTTP_HOST}%{REQUEST_URI} [R=301,L]</span><span class="pln">

</span><span class="pun">&lt;</span><span class="typ">IfModule</span><span class="pln"> mod_rewrite</span><span class="pun">.</span><span class="pln">c</span><span class="pun">&gt;</span><span class="pln">

    </span><span class="typ">RewriteEngine</span><span class="pln"> on
    </span><span class="typ">RewriteCond</span><span class="pln"> </span><span class="pun">%{</span><span class="pln">HTTP_HOST</span><span class="pun">}</span><span class="pln">  </span><span class="pun">^(</span><span class="pln">www\.</span><span class="pun">)?</span><span class="pln">mojadomena\.sk$
    </span><span class="typ">RewriteRule</span><span class="pln">    </span><span class="pun">^</span><span class="pln">$    webroot</span><span class="pun">/</span><span class="pln">    
    
    </span><span class="typ">RewriteCond</span><span class="pln"> </span><span class="pun">%{</span><span class="pln">HTTP_HOST</span><span class="pun">}</span><span class="pln">  </span><span class="pun">^(</span><span class="pln">www\.</span><span class="pun">)?</span><span class="pln">mojadomena\.sk$    
    </span><span class="typ">RewriteRule</span><span class="pln">    </span><span class="pun">(.*)</span><span class="pln"> webroot</span><span class="pun">/</span><span class="pln">$1   
</span><span class="pun">&lt;/</span><span class="typ">IfModule</span><span class="pun">&gt;</span></pre>

<p>
	 
</p>

<ul>
	<li>
		<strong>mojadomena</strong> treba pochopiteľne nahradiť názvom vlastnej domény
	</li>
	<li>
		<strong>webroot</strong> treba nahradiť adresárom, z ktorého sa má načítavať web
	</li>
</ul>

<p>
	 
</p>

<p>
	<span style="font-size:20px;"><strong>.htaccess v subdoméne Laraver - určuje kde má Laravel webroot</strong></span>
</p>

<p>
	 
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted" id="ips_uid_4109_14" style=""><span class="tag">&lt;ifmodule</span><span class="pln"> </span><span class="atn">mod_rewrite</span><span class="pln">.</span><span class="atn">c</span><span class="tag">&gt;</span><span class="pln">

    </span><span class="tag">&lt;ifmodule</span><span class="pln"> </span><span class="atn">mod_negotiation</span><span class="pln">.</span><span class="atn">c</span><span class="tag">&gt;</span><span class="pln">
        #Options -MultiViews
    </span><span class="tag">&lt;/ifmodule&gt;</span><span class="pln">

    RewriteEngine On
    
    RewriteCond %{REQUEST_URI} !^/public/
    RewriteRule ^(.*)$ /public/$1 [L,QSA]

    RewriteCond %{REQUEST_FILENAME} -d [OR]
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^ ^$1 [N]

    RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
    RewriteRule ^(.*)$ public/$1

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ server.php
   
</span><span class="tag">&lt;/ifmodule&gt;</span></pre>

<p>
	 
</p>

<p>
	<span style="font-size:20px;"><strong>.htaccess v /public/</strong></span>
</p>

<p>
	 
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted" id="ips_uid_4109_16" style=""><span class="tag">&lt;IfModule</span><span class="pln"> </span><span class="atn">mod_rewrite</span><span class="pln">.</span><span class="atn">c</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;IfModule</span><span class="pln"> </span><span class="atn">mod_negotiation</span><span class="pln">.</span><span class="atn">c</span><span class="tag">&gt;</span><span class="pln">
        #Options -MultiViews -Indexes
    </span><span class="tag">&lt;/IfModule&gt;</span><span class="pln">

    RewriteEngine On

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ /index.php [L]

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

</span><span class="tag">&lt;/IfModule&gt;</span></pre>

<p>
	 
</p>
]]></description><guid isPermaLink="false">215</guid><pubDate>Fri, 18 Aug 2023 13:59:49 +0000</pubDate></item></channel></rss>
