ugrás a tartalomhoz

Rövid webcímek mod_rewrite felhasználásával, Apache2, WinXP

Anonymous · 2005. Dec. 25. (V), 19.01
Halihó!

Akadt egy kis problémám a rövid webcímek előállításával. Miután elolvastam két cikket, csináltam egy ilyet (httpd.conf-ban beállítottam mindent):

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php
</IfModule>


Tehát a weblaboros cikk alapján, ha nem létező oldalt, könyvtárt akarnak elérni, akkor átirányítom az index.php-re. Csakhogy nem működik, egész pontosan 404 (próbáltam úgy is, hogy egy az egyben átmásoltam a példát, de úgy sem jó). (Apache2, xp)
 
1

mod_rewrite

Bártházi András · 2005. Dec. 25. (V), 20.57
Be van töltve, fel van telepítve a mod_rewrite modul?

-boogie-
2

Igen

Anonymous · 2005. Dec. 25. (V), 21.22
A phpinfo szerint:

Loaded Modules

core mod_win32 mpm_winnt http_core mod_so mod_access mod_actions mod_alias mod_asis mod_auth mod_autoindex mod_cgi mod_dir mod_env mod_imap mod_include mod_isapi mod_log_config mod_mime mod_negotiation mod_rewrite mod_setenvif mod_userdir sapi_apache2
3

Jogosultságok...

janoszen · 2005. Dec. 26. (H), 00.10
Arra ügyelj, hogy a mod_rewrite engedélyezésének a httpd.conf-ban ugyanarra a könyvtárra kell szólnia, mint ami a DocumentRootnál van megadva.
4

Hol is?

Anonymous · 2005. Dec. 26. (H), 09.11
Ezzel most újat mondasz. Hol kell azt beálítani? (Jelenleg a DocumentRoot nekem c:\localhost.)
5

ALLOW OVERRIDE

janoszen · 2005. Dec. 26. (H), 10.55
Üdv!

Egy ilyen bejegyzésnek kell akkor lennie valahol:

<Directory "c:/localhost">

#
# This may also be "None", "All", or any combination of "Indexes",
# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
    Options Indexes FollowSymLinks MultiViews

#
# This controls which options the .htaccess files in directories can
# override. Can also be "All", or any combination of "Options", "FileInfo", 
# "AuthConfig", and "Limit"
#
    AllowOverride All

#
# Controls who can get stuff from this server.
#
    Order allow,deny
    Allow from all
</Directory>
6

Végre!!

Anonymous · 2005. Dec. 26. (H), 11.46
Nagyon köszönöm, így már jó, de a tárhelyen nem. Pedig a mod_rewrite ott is betöltődik, de minek, ha úgy van konfigurálva az Apache, hogy nem lehet használni?? Hát...
7

Így is jó lehet?

Anonymous · 2005. Dec. 26. (H), 15.24
Mivel a tárhelyen nem megy ezért kitaláltam egy ilyet:

Így adnám meg a linkeket (ez csak egy példa): http://valami.hu/?autok/trabant/1

Aztán egy $_SERVER["QUERY_STRING"]-gel megy egy explode-dal megnézem, hogy melyik oldalt kérik (autok), melyik tipust (trabant) és hányadik oldalt(1).

Életképes lehet ez?


A másik lehetőség, hogy írok a szolgáltatónak egy mailt, amit meg is teszek mindjárt. :)
8

megy

Hojtsy Gábor · 2005. Dec. 26. (H), 15.33
A rövid webcímek egyik előnye, hogy elrejtik a dinamikus jellegüket, ezt a ?-es megoldás nem rejti el, de persze elég rövid, és működik a módszer, amit vázolsz. Azért érdemes a szolgáltatóval is elbeszélgetni.
9

naja

Anonymous · 2005. Dec. 26. (H), 16.17
Hát igen, így már nem olyan szép, de ha nem lesz jobb, akkor...

Mail elment, várom a választ... :)
10

Ezt buktam

Anonymous · 2006. Jan. 2. (H), 16.25
Sajnos biztonsági okok miatt nem állítják az AllowOverride értékét All-ra...