.htaccess rubrika: Programování: PHP

2 ondracek2lukas
položil/-a 26.7.2016

Zdravím nejsem zas tak zkušený mám problém pořídil sem si webhosting s windows a na subdoméně potřebuji aby url vypadala subdomena.neco.cz/kategorie/podkategorie/ ale doopravdy aby mi to vracelo subdomena.neco.cz?a=kategorie&b=kategorie

Vzhledem k tomu že htacces příliš nastavovat neumím tak sem si vygooglil takovej kterej potřebuji a jen ho upravil:

<IfModule mod_expires.c>
  ExpiresActive Off
  ExpiresByType image/gif A604800
  ExpiresByType image/jpg A604800
  ExpiresByType image/png A604800
  ExpiresByType image/jpeg A604800
  ExpiresByType text/css A1
  ExpiresByType text/javascript A1
  #ExpiresByType text/js A604800
  ExpiresByType text/html A1
  ExpiresByType text/php A1
  ExpiresByType application/x-javascript A604800
  ExpiresByType application/javascript A604800
</IfModule>
 
ErrorDocument 404 /errors/404/
ErrorDocument 500 /errors/500/
 
RewriteEngine On
 
 
RewriteRule /index.php / [R=301]
 
RewriteCond %{THE_REQUEST} ^(.+)\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^(.+)\.php$ http://subdomena.neco.cz/$1/ [R=301,L]
 
 
 
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ %{DOCUMENT_ROOT}/index.php?a=$1&b=$2&c=$3&d=$4&e=$5&f=6&g=7&h=8&i=9 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ %{DOCUMENT_ROOT}/index.php?a=$1&b=$2&c=$3&d=$4&e=$5&f=6&g=7&h=8 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ %{DOCUMENT_ROOT}/index.php?a=$1&b=$2&c=$3&d=$4&e=$5&f=6&g=7 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ %{DOCUMENT_ROOT}/index.php?a=$1&b=$2&c=$3&d=$4&e=$5&f=6 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ %{DOCUMENT_ROOT}/index.php?a=$1&b=$2&c=$3&d=$4&e=$5 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ %{DOCUMENT_ROOT}/index.php?a=$1&b=$2&c=$3&d=$4 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/$ %{DOCUMENT_ROOT}/index.php?a=$1&b=$2&c=$3 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/$ %{DOCUMENT_ROOT}/index.php?a=$1&b=$2 [L,QSA]
RewriteRule ^([^/]+)/$ %{DOCUMENT_ROOT}/index.php?a=$1 [L,QSA]

a když do url zadám subdomena.neco.cz/test/

tak vyjede chyba :

HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

Requested URL http://subdomena.neco.cz:80/D:/Inetpub/webs/16784216_web/subdoms/test/in...
Physical Path D:\Inetpub\webs\16784216_web\subdoms\test\D:\Inetpub\webs\16784216_web\subdoms\test\index.php

ta requested URL mi přijde náká divná :D Kolega mi poradil že sem tam měl dat linuxy ale kdyby existovala nějaká možnost jak se přes to dostat bylo by to fajn :)

Díky za odpověď

Komentáře

  • roman.hocke : Přijde mi, že tam dělá problém ten %{DOCUMENT_ROOT}, viz tu podivnou "Requested URL". Takže bych zkusil dát pryč ze všech pravidel ten %{DOCUMENT_ROOT} a nebo - ještě lépe - použil KITovo řešení :-) 26.7.2016
odkaz Vyřešeno
2 ondracek2lukas
odpověděl/-a 26.7.2016

diky moc za rady pokusim se pochopit Kitovo řešení zdá se mi o mnoho pohodlnější :)

Komentáře

  • tdvorak : Záleží, jestli se snažíš jen napasovat apache na současnou aplikaci nebo máš v moci jak apache, tak aplikaci. Pokud obojí, pak asi bude jednodušší vyřešit si vše v aplikaci, než magie v .htaccess. 26.7.2016

Pro zobrazení všech 3 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.