| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
alexandruc
Data înscrierii: 27/Feb/2007
Mesaje: 25
|
| Trimis: Joi Oct 30, 2008 8:39 pm Titlul subiectului: regex / mod_rewrite / .htaccess help |
|
|
Salut,
Am urmatoarea structura (pe un server local - WAMP cu mod rewrite activat):
http://localhost/sitename/index.php
http://localhost/sitename/page.php?name=ceva
http://localhost/sitename/info.php?id=altceva
in .htaccess (pus in directorul sitename) am urmatorul cod:
Cod: Options +FollowSymLinks
RewriteEngine on
RewriteBase /
Rewriterule ^sitename/page/([^/])/?$ /sitename/page.php?name=$1 [L]
Rewriterule ^sitename/info/([^/])/?$ /sitename/info.php?id=$1 [L]
RewriteRule ^sitename/?$ /index.php [L]
si nu functioneaza... :(
conform a ceea am citit in urma cautarilor legate de acest subiect ar trebui sa imi transforme linkurile in:
http://localhost/sitename/page/ceva
http://localhost/sitename/info/altceva
http://localhost/sitename
Unde gresesc? :(
p.s: alta intrebare este - atunci cand va functiona, va trebui sa modific toate linkurile din codul paginilor in noul format? sau va stii cumva serverul sa le trimita in noua forma? (nu radeti de mine.. sunt nou in acest subiect :) )
multumesc,
Alex
EDIT:
comportament:
1. intrarea pe site:
http://localhost/sitename/ <- deschide pagina index.php
2. merg la: sitename/page.php
http://localhost/sitename/page <- afiseaza page.php
3. merg la: sitename/page.php?name=something
http://localhost/sitename/page/something <- afiseaza TOT page.php si pierde css-ul si calea catrea directorul de imagini (imaginile nu mai sunt afisate). imaginea devine: http://localhost/sitename/page/images/a.jpg in loc de http://localhost/sitename/images/a.jpg cum ar fi corect.
4. click iar pe: page.php?name=something
http://localhost/sitename/page/page/something <- fiecare click aditional pe link adauga "/page/" in url
Ceva idei? :( |
|
| Sus |
|
Quber
Data înscrierii: 27/Iun/2006
Mesaje: 849
Locație: localhost
|
| Trimis: Vin Oct 31, 2008 9:07 am Titlul subiectului: |
|
|
nu am stat sa citesc pina la urma dar cred ca la tine nu merge din cauza ca ai uitat sa pui semnul "+"
Cod:
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
Rewriterule ^sitename/page/([^/]+)(/?)$ /sitename/page.php?name=$1 [L]
Rewriterule ^sitename/info/([^/]+)(/?)$ /sitename/info.php?id=$1 [L]
RewriteRule ^sitename/?$ /index.php [L]
|
|
| Sus |
|
XDYNX
Data înscrierii: 08/Iun/2006
Mesaje: 379
Locație: Pitesti
|
| Trimis: Vin Oct 31, 2008 11:51 am Titlul subiectului: |
|
|
| uite aici o unelta utila - http://www.htaccesseditor.com/en.shtml#a_access |
|
| Sus |
|
mfwsro
Data înscrierii: 03/Dec/2008
Mesaje: 108
Locație: Bucuresti
|
| Trimis: Mie Dec 03, 2008 1:09 pm Titlul subiectului: |
|
|
Salut,sunt pe un host nou nu ii dau numele si am urmatoarele probleme pe care pina acum nu le-am mai intilnit:
-nu pot sterge .htaccessul,daca il sterg ramane tot acolo.
-daca il inlocui sau scriu ceva in el pe domeniu am eroare 500.
Ce se poate face,ceva idei,sugestii sunt binevenite.Va multumesc. |
|
| Sus |
|
mihaitha
Data înscrierii: 04/Mai/2007
Mesaje: 2230
Locație: Sibiu
|
| Trimis: Mie Dec 03, 2008 1:29 pm Titlul subiectului: |
|
|
| Poate serverul e configurat sa necesite un fisier .htaccess, deci daca il stergi il recreaza automat (sau nu il sterge 0 uita-te in FTP log cand incerci sa il stergi, nu iti da un "access denied" sau ceva?). Cat despre partea cu scrisul in el, depinde ce scrii - daca scrii ceva incorect e si normal sa iti dea eroare 500. |
|
| Sus |
|
mfwsro
Data înscrierii: 03/Dec/2008
Mesaje: 108
Locație: Bucuresti
|
| Trimis: Mie Dec 03, 2008 1:52 pm Titlul subiectului: |
|
|
Mentionez ca am cpanel nu plesk ca sa il ascunda,deci e vizibil.
Si am inteles ca il creeaza automat daca vreau sa il sterg dar asta se intimpla numai daca as fi fost gazduit pe un subdomeniu dar nu ma gandeam ca si in cazul domeniilor se poate face asa ceva.
Iar ce am vrut sa scriu in .htaccess a fost simplu php_flag register_globals 0 sau Off tot eroare 500 imi rezulta,si un punct daca puneam tot acelasi rezultat imi afisa iar cel de la host nu stie ce sa-i faca sau poate de unde. |
|
| Sus |
|
mihaitha
Data înscrierii: 04/Mai/2007
Mesaje: 2230
Locație: Sibiu
|
| Trimis: Mie Dec 03, 2008 2:48 pm Titlul subiectului: |
|
|
| Daca pe pe /public_html nu ai Allow Override si un simplu php_flag iti poate genera eroare 500. |
|
| Sus |
|
Bamselu
Data înscrierii: 29/Oct/2008
Mesaje: 56
Locație: Bucuresti
|
| Trimis: Mar Mar 24, 2009 1:07 am Titlul subiectului: |
|
|
1. Regulile tale nus bune. Incearca asa:
Cod:
Rewriterule ^sitename/page/([a-z0-9-]+)/?$ /sitename/page.php?name=$1 [L]
Rewriterule ^sitename/info/([a-z0-9-]+)/?$ /sitename/info.php?id=$1 [L]
RewriteRule ^sitename/?$ /index.php [L]
Presupunand ca variabila name o sa contina doar litere mici si numere de la 0 la 9 si caracterul -
2. Css-ul nu se mai incarca pt ca probabil folosesti cai relative.
3. Va trebui sa modifici toate url-urile generate de script-ul tau php sa fie de forma pe care o vrei tu.
exemplu: /sitename/page.php?name=$1 |
|
| Sus |
|
mihaitha
Data înscrierii: 04/Mai/2007
Mesaje: 2230
Locație: Sibiu
|
| Trimis: Mar Mar 24, 2009 11:11 am Titlul subiectului: |
|
|
| Mai uita-te si la data ultimei postari inainte sa scrii ceva. Thread-ul asta e mort de 3 luni. |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |