• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] - mod_rewrite in Apache laden?

Ich habe schon über yast und apt geschaut, um das Module zu laden, auch google habe ich befragt, und sehr viele schöne Möglichkeiten gefunden, wie man das konfiguriert, aber wo ich das herbekomme, und wie ich es lade ist mir ein Buch mit sieben Siegeln.
In der /etc/apache2/httpd.conf steht das Modul nicht drin. Und auch mit diversen ergoogleten Befehlen kam ich nicht zum Ergebnis.
Ich habe Apache 2.0.54.10 und Suse 10.0

edit: 18.01.06 auf gelöst gesetzt
 
Das Rewrite Mod ist eigentlich immer dabei. Schau mal dort wo die anderen Module gespeichert sind.
 
Ah, ich habe es gefunden, Danke:

Jetzt habe ich in der httpd.conf folgendes eingefügt:

Code:
LoadModule rewrite_module modules/mod_rewrite.so
AddModule mod_rewrite.c

Beim Neustart kommt das raus:

Code:
linux: # rcapache2 start
Starting httpd2 (prefork) Syntax error on line 90 of /etc/apache2/httpd.conf:
Cannot load /srv/www/modules/mod_rewrite.so into server: /srv/www/modules/mod_rewrite.so: cannot open shared object file: No such file or directory

The command line was:
/usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf
                                                                     failed

Über die SuFU dieses Forums bin ich auf diesen Link gestoßen:
http://www.tutorials.de/tutorials160049.html

Allerdings frage ich mich was das soll:
Code:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^/liste_haushalt.html$ /warenkorb.php?action=show&kat=229
</IfModule>

Mir scheint aber die wissen beide nicht was da los ist. Packe ich vor dem ersten Code Kreuze, dann funktioniert der Apache wieder.

Wenn ich den letzten Code richtig verstehe, dann macht diese aus einer dynamischen Websiteadresse eine statischen html-Adresse.

Was muss ich ändern, um überhaupt erst mal das Teil zum laufen zu bringen?
Zum Starten war das leider bisher der einzig brauchbare Link. Alles andere beschäftigt sich eher mit den Sachen danach.
 
Hoi Yehudi

schon mal hier geschaut wegen der Einbindung des Modules:

http://www.linux-club.de/viewtopic.php?t=50457 (letzter post)

sollte man glaub ich so machen (bei mir hats funktioniert)
 
Hi mcdaniels

das habe ich natürlich nicht gelesen, weil "mod_rewrite" nicht vorkommt, da versagt leider die SuFu. Danke für den Hinweis, ganz geklappt hat es aber noch nicht.

mcdaniels schrieb:
1. /etc/sysconfig/apache2 folgenden Eintrag editieren. In meinem Fall hab ich speling (fürs module_rewrite) hinzugefügt:

APACHE_MODULES="access actions alias auth auth_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir php4 php5 rewrite"

2. Apache2 restarten (rcapache2 restart). Danach wird in der Datei /etc/apache2/sysconfig.d/loadmodule.conf am Ende automatisch das entsprechende loadmodule eingefügt:

LoadModule rewrite_module /usr/lib/apache2-prefork/mod_rewrite.so

Bis hierher bin ich gekommen. Ich habe das mal meinem Modul alles angepasst, aber die default-server.config
Um das rewrite zu aktivieren: Checkrewrite On setzen

(ich hab das in der default-server.config):
<Directory "/srv/www/htdocs">
Checkrewrite On
...
...
</Directory>

Beim erneuten restart des Apaches folgt:

Code:
linux:/ # rcapache2 restart
Syntax error on line 12 of /etc/apache2/default-server.conf:
Invalid command 'Checkrewite', perhaps mis-spelled or defined by a module not included in the server configuration

Also ist da noch was nicht in Ordnung. mache ich ein # davor ist die Welt wieder in Ordnung.
 
Die Direktive heißt "RewriteEngine On" nicht checkrewrite. http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html#RewriteEngine
 
Danke, ich hatte mir schon gedacht, dass check eventuell nicht stimmt. War das erste mal, dass ich am Apache selber überhaupt was gemacht hatte, außer starten. Damit ist meine Frage erfolgreich beantwortet.
 
Oben