Autor Zpráva
koule
Profil *
ahoj,
chtěl bych se zeptat jak vlastně fungují ty "pěkné adresy" např. neco.cz/kontakt ? A jak toho dosáhnu abych je měl na webu taky. diky za radu
Joker
Profil
klíčové slovo: mod_rewrite
Je toho tady o tom napsáno dost a dost
Str4wberry
Profil
Například:
Vytvoříš soubor .htaccess s obsahem:

RewriteEngine on
Options +FollowSymlinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

Při zavolání neco.cz/kontakt se zpracuje neco.cz/?q=kontakt.
koule
Profil *
diky. ted sem to možná pochopil.
koule
Profil *
mam ještě k tomu dotaz. pořád mi to nefunguje. mam jenom zkušební soubor pro to. dam k nahlédnutí.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php
$stranka = $_GET['str'];

if (!isset($_GET['str'])) {
$stranka = "uvod";
} else {
$stranka = $_GET['str'];
}

$soubor = "soubory/".$stranka.".php"; // k názvu p?ipojíme cestu do adresá?e zep?edu a p?íponu zezadu
if (!file_exists($soubor)) {
$soubor = "soubory/uvod.php";
} // pokud neexistuje soubor, který chceme includovat, budeme vkládat soubor uvod.php
?>
<table width="100" height="79" border="0">
<tr>
<td height="20"><a href="uvod">Uvod</a></td>
</tr>
<tr>
<td height="22"><a href="kontakt">Kontakt</a></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
</table>
<table width="352" height="236" border="0">
<tr>
<td height="114"><?php include ($soubor); ?></td>
</tr>
</table>
</body>
</html>


potom ty dva soubory s textem a ten soubor .htaccess. nevim proč ale nefunguje. musim jěště něco nastavovat nebo proč to nejde. zkuste se mi na to podívat. budu moc rád. diky všem
Str4wberry
Profil
koule
Jak nefunguje, co to dělá? Vypisuje to nějakou chybu či co?
koule
Profil *
díval ses na ten kód? jestli nemam někde špatně adresy k souborum? nevim. ale nermálně jako neco.cz/index.php?str=kontakt to jede. mam to na adrese http://webovestudio.eu/url/ tak se mi an to prosim podivej. jestli budeš tak hodnej diky.
Str4wberry
Profil
koule
Chyba je někde v rewritu.

Máš určitě poslední řádek v .htaccess?
RewriteRule ^(.*)$ index.php?str=$1 [L,QSA]
koule
Profil *
tohle mam v .htaccess

RewriteEngine on
Options +FollowSymlinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?str=$1 [L,QSA]
Str4wberry
Profil
koule
A .htaccess je v adresáři http://webovestudio.eu/url/? Jinak je mi to divný, tenhle způsob mi spolehlivě funguje.
koule
Profil *
jo je to v tom adresáři. neznáš ještě ňákej způsoub. nebo jestli neni chyba v tomhle textu?:

RewriteEngine on
Options +FollowSymlinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?str=$1 [L,QSA]
svadla
Profil
koule
nedavno jsem resil neco podobneho...
- hosting nemel povoleno Options +FollowSymlinks
Shane
Profil
Sice už je to měsíc, ale možná aspoň pomůžu ostatním.
Mě funguje tohle:

#pekne url
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ %{DOCUMENT_ROOT}/index.php?id=$1 [L,QSA]

(id = str = page = ... - nahradíš podle potřeby ;)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0