.htaccess rescriere
Probleme, intrebari si subiecte legate de Server Apache, setari in fisier htaccess si Gazduire site-uri Web (Hosting).
-
Wayn3
- Mesaje:111
.htaccess rescriere
Salut, am o problema cu functia rewrite in .htaccess.
Am un fisier episoade.php unde am niste query-uri de select, cu ajutorul carora generez o legatura de forma:
Cod: Selectaţi tot
vizionare.php?_".$nameimpl3."_&ep=".$row21['nrep']."&var=".$row21['id']."
Vreau ca acest link sa se rescrie in forma asta:
si am folosit .htaccess cu urmatorul continut:
Cod: Selectaţi tot
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^Episoade/([^/]+)/([^/]+).html /vizionare.php?$nameimpl&ep=$rand['nrep'] [NC]
Nu functioneaza deloc, ce am gresit?
MarPlo
Mesaje:4343
Salut
In .htaccess nu se adauga variabile php.
Dupa modelul tau, ar trebui asa:
Cod: Selectaţi tot
RewriteRule ^Episoade/([^/]+)/([^/]+).html /vizionare.php?$1&ep=$2 [NC]
- $1 reprezinta prima pereche de paranteze rotunde, $2 pe cea dea doua.
- Dar chiar si asa, in scriptul php s-ar putea sa u mearga fiindca lipseste partea pt. "var=" ($row21['id'])
Wayn3
Mesaje:111
MarPlo scrie:Salut
In .htaccess nu se adauga variabile php.
Dupa modelul tau, ar trebui asa:
Cod: Selectaţi tot
RewriteRule ^Episoade/([^/]+)/([^/]+).html /vizionare.php?$1&ep=$2 [NC]
- $1 reprezinta prima pereche de paranteze rotunde, $2 pe cea dea doua.
- Dar chiar si asa, in scriptul php s-ar putea sa u mearga fiindca lipseste partea pt. "var=" ($row21['id'])
Trebuie musai ca linkul sa contina si var=... ? Am pus si fara var, si cu var... nu functioneaza.. Se poate sa fie dezactivat ceva din server?
MarPlo
Mesaje:4343
Daca trebuie sau nu "var=", depinde de scriptul php, la ce-l foloseste. Probabil ca nu e pus degeaba in URL.
Iar serverul ar trebui sa aibe Mod-Rewrite activat, asta stie cel care administreaza serverul.
Wayn3
Mesaje:111
Functia este activata din server.. insa tot nu functioneaza sa rescriu link-ul.. insa doar din .php in .html, si imi returneaza 'file not found'..
MarPlo
Mesaje:4343
Incearca asa:
Cod: Selectaţi tot
RewriteRule ^Episoade/([^/]+)/([A-Za-z0-9_-]+).html /vizionare.php?$1&ep=$2 [NC]
- Dar dupa "...php?" ar trebui o valoare cu '=' pt. $1, sa fie cam asa:
vizionare.php?ceva=$1&ep=$2 , dar la tine in adresa cu ".php" nu apare acel "ceva".
Daca nici asa nu merge, nu-mi dau seama ce sa fie.
"file not found" spune ca nu e buna calea catre "vizionare.php" .