Apache Direktiven RewriteEngine

Dieses Thema im Forum "Installation und Konfiguration" wurde erstellt von BJGTomcom, 28. Juli 2008.

  1. BJGTomcom

    BJGTomcom New Member

    Hallo,

    ich möchte gern mit dem Zend Framework ein MVC Web erstellen, jedoch habe ich Probleme mit den Apache Direktiven.
    Wenn ich hier
    Code:
    <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php [L]
    </IfModule>
    
    eintrage, bekomme ich beim Aufruf immer ein "400 Bad Request error".
    Was mach ich denn falsch.

    Danke im vorraus.
    Oliver
     
  2. Till

    Till Administrator

    Wo genau hast Du das eingetragen? In einer .htaccess datei oder im apache Direktiven Feld des Webs? Gibt es eine detilliertere Fehlermeldung im error.log der Webseite?
     
  3. BJGTomcom

    BJGTomcom New Member

    Ich habe es in dem apache Direktiven Feld des Webs eingetragen.

    Leider ist die error.log noch nicht aktuell, oder gibt es eine Möglichkeit diese zu aktualisieren
    Danke Oliver
     
    Zuletzt bearbeitet: 28. Juli 2008
  4. BJGTomcom

    BJGTomcom New Member

    Hallo,

    leider wird für den error 400 kein Eintrag in die error.log gemacht.
    Oliver
     
  5. vzcrsa

    vzcrsa New Member

    gleiches problem mod_rewrite

    meine htaccess sieht so aus:
    Options -MultiViews

    <IfModule mod_rewrite.c>
    RewriteEngine on

    RewriteRule ^articles/{0,1}$ articles.php [QSA,L]
    RewriteRule ^articles/entry/([^/.]+)/{0,1}$ articles.php?action=viewarticle&articleUri=$1 [QSA,L]
    RewriteRule ^articles/entry/{0,1}$ articles.php?action=viewarticle&articleUri=$1 [QSA,L]
    RewriteRule ^articles/category/([^/.]+)/{0,1}$ articles.php?action=viewcategory&articleCatUri=$1 [QSA,L]

    RewriteRule ^news/{0,1}$ news.php [QSA,L]
    RewriteRule ^news/([^/.]+)/{0,1}$ news.php?newsUri=$1 [QSA,L]

    RewriteRule ^blogs/{0,1}$ blogs.php [QSA,L]
    RewriteRule ^blogs/all/([0-9]+)/([0-9]+)/{0,1}$ blogs.php?page=$2&per_page=$1 [QSA,L]
    RewriteRule ^blogs/top/{0,1}$ blogs.php?action=top_blogs [QSA,L]
    RewriteRule ^blogs/top/([0-9]+)/([0-9]+)/{0,1}$ blogs.php?action=top_blogs&page=$2&per_page=$1 [QSA,L]
    RewriteRule ^blogs/top_posts/{0,1}$ blogs.php?action=top_posts [QSA,L]
    RewriteRule ^blogs/tag/([^/.]+)/{0,1}$ blogs.php?action=search_by_tag&tagKey=$1 [QSA,L]
    RewriteRule ^blogs/tag/{0,1}$ blogs.php?action=search_by_tag&tagKey= [QSA,L]
    RewriteRule ^blogs/posts/([^/.]+)/tag/([^/.]+)/{0,1}$ blogs.php?action=search_by_tag&tagKey=$2&ownerName=$1 [QSA,L]
    RewriteRule ^blogs/posts/([^/.]+)/category/([^/.]+)/{0,1}$ blogs.php?action=show_member_blog&ownerName=$1&categoryUri=$2 [QSA,L]
    RewriteRule ^blogs/entry/([^/.]+)/{0,1}$ blogs.php?action=show_member_post&postUri=$1 [QSA,L]
    RewriteRule ^blogs/entry/{0,1}$ blogs.php?action=show_member_post&postUri= [QSA,L]
    RewriteRule ^blogs/posts/([^/.]+)/{0,1}$ blogs.php?action=show_member_blog&ownerName=$1 [QSA,L]
    RewriteRule ^blogs/posts/{0,1}$ blogs.php?action=show_member_blog&ownerName= [QSA,L]
    RewriteRule ^blogs/posts/([^/.]+)/([0-9]+)/([0-9]+)/{0,1}$ blogs.php?action=show_member_blog&ownerName=$1&page=$3&per_page=$2 [QSA,L]
    RewriteRule ^blogs/posts/([^/.]+)/category/([^/.]+)/([0-9]+)/([0-9]+)/{0,1}$ blogs.php?action=show_member_blog&ownerName=$1&categoryUri=$2&page=$4&per_page=$3 [QSA,L]

    RewriteRule ^events/{0,1}$ events.php?show_events=all&action=show [QSA,L]
    RewriteRule ^events/all/([0-9]+)/([0-9]+)/{0,1}$ events.php?show_events=all&action=show&page=$2&per_page=$1 [QSA,L]
    RewriteRule ^events/part/{0,1}$ events.php?show_events=all&action=show [QSA,L]
    RewriteRule ^events/search/{0,1}$ events.php?action=search [QSA,L]
    RewriteRule ^events/search/([^/.]+)/{0,1}$ events.php?action=search_by_tag&tagKey=$1 [QSA,L]
    RewriteRule ^events/my/{0,1}$ events.php?action=show&show_events=my [QSA,L]
    RewriteRule ^events/new/{0,1}$ events.php?action=new [QSA,L]
    RewriteRule ^events/entry/([^/.]+)/{0,1}$ events.php?action=show_info&eventUri=$1 [QSA,L]
    RewriteRule ^events/part/([^/.]+)/{0,1}$ events.php?action=show_part&eventUri=$1 [QSA,L]


    so und in der ISPConfig Apache directives: habe ich folgendes stehen
    <Directory "/srv/www/web1/web">
    Options +FollowSymLinks +SymLinksIfOwnerMatch
    <IfModule mod_access.c>
    Allow from all
    </IfModule>
    </Directory>

    aber es funktioniert nicht !!

    wer kann mir hier weiterhelfen ??
     
  6. Till

    Till Administrator

    @vzcrsa: Welche Fehlermeldung erhältst Du im error Log der Wesbeiet bzw. was ganeu geht nicht.
     
  7. vzcrsa

    vzcrsa New Member

    Ich erhalte die Fehlerseite 500 mehr nicht !!
     
  8. Till

    Till Administrator

    Im error.log der Webseite muss eine aussagekräftigere Fehlermeldung stehen, sieh bitte dort nach und poste sie.
     
  9. vzcrsa

    vzcrsa New Member

    also das steht bei mir drin !!
    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.
    Please contact the server administrator, webmaster@xxxxxxxxxxx.de and inform them of the time the error occurred, and anything you might have done that may have caused the error.
    More information about this error may be available in the server error log.
    Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
    Apache/2.2.3 (Debian) PHP/5.2.0-8+etch11 mod_ssl/2.2.3 OpenSSL/0.9.8c Server at xxxxxxxxxxxx.de Port 80

    und in der error.log steht:
    [Wed Aug 06 09:49:34 2008] [alert] [client 2xx.xx.xxx.xx] /var/clients/client0/web13/web/.htaccess: Option MultiViews not allowed here

    dazu noch eine frage lassen sich die direktiven nicht in einer template.datei anlegen so das ich mod_rewrite gleich für jeden user / domain , automatisch anlegen kann ???!!! wäre doch hier mal ne IDEE
     
    Zuletzt bearbeitet: 6. Aug. 2008
  10. Till

    Till Administrator

    Ok, wie die Fehlermeldung besagt, Du versuchst die Option Multiviews in einer .htaccess datei zu setzen, das ist aber nicht erlaubt. Um es zu erlauben, füge:

    MultiViews

    zur AllowOverride Zeile:

    AllowOverride Indexes AuthConfig Limit FileInfo

    in der apache2.conf bzw. httpd.conf Datei im Bereich für das Directory /var/www/*/web hinzu und starte apache neu.
     
  11. vzcrsa

    vzcrsa New Member

    jetzt bekomme ich den fehler !

    [Wed Aug 06 12:46:39 2008] [error] VirtualHost *:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results
     
  12. Till

    Till Administrator

    Das ist kein Fehler, nur eine Warnung. Das ist ok so.
     
  13. vzcrsa

    vzcrsa New Member

    ok warum geht der webserver dann nicht ?? im ACP steht webserver offline
     
  14. Till

    Till Administrator

    Was ist ACP?
     
  15. vzcrsa

    vzcrsa New Member

    im Admin Panel / bereich

    [FONT=Verdana, Arial, Helvetica, sans-serif]Web-Server:[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]Offline[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]FTP-Server:[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]Online[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]SMTP-Server:[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]Online[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]POP3-Server:[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]Online[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]DNS-Server:[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]Online[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]mySQL-Server:[/FONT] [FONT=Verdana, Arial, Helvetica, sans-serif]Online

    das ist doch vom apache2 und wenn der nicht startet kann es ja schon von gruand auf nicht gehen
    [/FONT]
     
  16. Till

    Till Administrator

    Postae mal die Ausgabe von:

    netstat -tap | grep www
     
  17. vzcrsa

    vzcrsa New Member

    tcp6 0 0 *:www *:* LISTEN 14087/apache2
    tcp6 0 0 vadmin13:www pD95DFD03.dip.t-di:3888 TIME_WAIT -
    tcp6 0 0 vadmin13:www pD95DFD03.dip.t-di:3896 TIME_WAIT -
    tcp6 0 0 vadmin13:www pD95DFD03.dip.t-di:3887 TIME_WAIT -
    tcp6 0 0 vadmin13:www pD95DFD03.dip.t-di:3886 TIME_WAIT -
     
  18. vzcrsa

    vzcrsa New Member

    so apache läuft wieder : jetzt kommt das nächste EROR 404 obwohl die datein vorhanden sind ! ???????
     
    Zuletzt bearbeitet: 6. Aug. 2008
  19. vzcrsa

    vzcrsa New Member

    na kann mir hier denn keiner eine vernüftige antwort geben ???
     
  20. vzcrsa

    vzcrsa New Member

    Wie kann ich es einrichten das für alle NEUEN user und bestehenden mod_rewrite direkt aktiv ist ??? bzw. für den ganzen server ???????
     

Diese Seite empfehlen