Problema rescriere adresa url in htaccess

Probleme, intrebari si subiecte legate de Server Apache, setari in fisier htaccess si Gazduire site-uri Web (Hosting).
Avatar utilizator
trif
Mesaje: 501

Problema rescriere adresa url in htaccess

Buna seara,
Am incercat sa pun in .htaccess functii pentru schimbarea link-urilor dar nu am reusit.
Am facut asa:

Cod: Selectaţi tot

RewriteEngine on
RewriteRule ^folder/([a-zA-Z0-9_-]+)/([0-9]+)\.html$ pagina.php?p=$1
Am tot incercat dar nu am inteles de ce nu merge.
Trebuie ceva setat in php.ini si nu am setat?

Astept raspuns.
Multumesc anticipat.
Cu stima Trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

MarPlo
Salut
In primul rand trebuie sa ai activat rewrite_module in Apache (fisierul "httpd.conf"), linia de cod respectiva sa fie fara "#" la inceput.
Apoi trebuie sa stii ce parte din adresa url rescrisa trebuie trimisa la php. In codul tau ai doua perechi de paranteze rotunde cu tipar Regex, prima se va gasi in $1, iar a doua in $2, care pot fi trimise la PHP.
In link-urile <a> din pagina se adauga adresa noua, cea rescrisa.
- Mai multe detalii sunt in tutorialul de pe site: Mod-Rewrite.

trif
Buna ziua, asta imi merge

Cod: Selectaţi tot

RewriteCond %{HTTP_HOST} ^alxweb\.ro$
RewriteRule ^.*$ http://www.alxweb.ro%{REQUEST_URI} [R=permanent,L]
iar am facut asa

Cod: Selectaţi tot

RewriteRule ^([0-9a-zA-Z-_]+).html$ p.php?p=$1 [NC,L]
si nu imi merge.
Link-ul contine:
litere mari, mici, _, -, /, numere, si alte simboluri.
dar nu imi merge.
Poti verifica pe link-ul din codul de mai sus, dai pe produsul respectiv.
Specific ca domeniul este adaugat si nu este pe direct pe public_html ci pe public_html/folder/

Ar putea sa fie o problema? unde trebuie sa pun .htaccess-ul?
Astept raspuns.
Multumesc anticipat.
Cu stima Trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

MarPlo
Incearca asa:

Cod: Selectaţi tot

RewriteRule /([0-9a-zA-Z_\-]+).html$ p.php?p=$1 [NC,L]
Sau asa:

Cod: Selectaţi tot

RewriteRule ^(.*?)/([0-9a-zA-Z_\-]+).html$ p.php?p=$2 [NC,L]
Sper sa mearga, fiindca altfel nu stiu.

trif
Buna ziua,
Am reusit sa fac sa imi ia direct html dar am o problema ca in link pot sa am tot felul de simboluri de la litere mari, mici, cifre, virgula, punct, -, egal, _, si tot felul.
este vreo sintaxa gen ([0-9a-zA-Z_\-]+) pentru tot felul de combinatii?
Astept raspuns.
Multumesc anticipat
Cu stima Trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

MarPlo
Daca acea parte din adresa url e intre ultimul "/" si ".html" (deci nu contine "/"), poti scrie formula Regexp sa contina orice caracter, in afara de "/".
Adica: ([^/]+)

Subiecte similare