Routing a la Symfony

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Routing a la Symfony

    Hallo Leute,

    sitz vor einem grösseren (zu wartenden) Projekt und möchte gern ein routing-Konzept à la Symfony im Nachhinein einbauen.

    D.h. aus ?param1=value1&param2=value2 sollte bspw. /param1/value1/param2/value2 werden, bestehende Seiten müssen das interpretieren können.

    Würdet ihr das per htaccess lösen oder ganz einfach den Querystring zerlegen bzw. hat jemand sowas in der Art schon gemacht oder kann mich auf eine Seite hinweisen, ich hab beim besten Willen nix finden können.

    Danke schonmal

  • #2
    Hallo,

    google mal nach „mod_rewrite“

    Gruß,

    Amica
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      super

      Vielen Dank Amica,

      habe jetzt die passende .htaccess erstellt und muss nur mehr den Querystring zerlegen.

      Kommentar


      • #4
        Zitat von ThemBones Beitrag anzeigen
        habe jetzt die passende .htaccess erstellt und muss nur mehr den Querystring zerlegen.
        Warum das? Bzw. wie meinst du das?
        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
        Super, danke!
        [/COLOR]

        Kommentar


        • #5
          Zitat von AmicaNoctis Beitrag anzeigen
          Warum das? Bzw. wie meinst du das?
          Sorry, das war wohl nur ein halber Satz. Ich muss das Zeug in PHP noch nachbearbeiten, sonst muss ich in der htaccess ziemlich viel händisch eintragen weil leider kein einheitliches Konzept für die get-params verwendet wurde. Wie auch immer, die Sache ist erledigt, danke nochmal.

          Kommentar


          • #6
            Diesen Schnipsel habe ich irgendwann mal hier im Forum aufgeschnappt
            PHP-Code:
            RewriteEngine on
            # Damit könnt Ihr "sagen" welche Dateien direkt aufgerufen werden können
            RewriteCond %{REQUEST_URI} !.(js$|.jpg$|.gif$|.css$|.pdf$|.rar$|.zip$)
            RewriteCond %{REQUEST_URI} !^/develop
            RewriteBase /
            RewriteRule index.php 
            ich lasse damit einfach alles an die index weiterleiten und drösel mir da die url auf

            Kommentar


            • #7
              Die 3. Zeile ist fehlerhaft und könnte so gemeint sein:
              Code:
              RewriteCond %{REQUEST_URI} !\.(js|jpg|gif|css|pdf|rar|zip)$
              [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
              Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
              Super, danke!
              [/COLOR]

              Kommentar


              • #8
                Ein QSA-Flag wäre sicher auch angebracht und statt einzelne Dateiendungen zu erlauben - es gibt so viele, das kann schnell unübersichtlich werden - wäre es besser, bestimmte Dateien zu verbieten (Black- statt Whitelist).

                Wenn das Ziel ist, es bekannten Systemen nachzumachen, warum nicht einfach bei denen abschreiben?
                The Definitive Guide to symfony | Chapter 3 - Running Symfony | symfony | Web PHP Framework
                [drupal] Contents of /drupal/.htaccess

                Kommentar


                • #9
                  Zitat von AmicaNoctis Beitrag anzeigen
                  Die 3. Zeile ist fehlerhaft und könnte so gemeint sein:
                  Code:
                  RewriteCond %{REQUEST_URI} !\.(js|jpg|gif|css|pdf|rar|zip)$
                  die läuft bei mir so wie angegeben..

                  und onemorenerd:
                  es gibt in meinem fall halt nur super wenig , die aufgerufen werden dürfen. den rest schleuse ich durch einen downloadmanager

                  Kommentar


                  • #10
                    Zitat von Peacie Beitrag anzeigen
                    die läuft bei mir so wie angegeben..
                    Reiner Zufall. Ruf mal eine URL mit .../abcjs oder .../foogif am Ende auf.
                    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                    Super, danke!
                    [/COLOR]

                    Kommentar


                    • #11
                      Zitat von AmicaNoctis Beitrag anzeigen
                      Reiner Zufall. Ruf mal eine URL mit .../abcjs oder .../foogif am Ende auf.
                      Schlimmer noch, ruf mal irgendeine GIF-Datei ab! Sollte funktionieren, tut es aber nicht. Denn das Pattern !.(...|.gif$|...) entspricht !..gif$, aber die RequestURI endet auf .gif mit nur einem(!) Punkt. Matcht also nicht, die Anfrage wird auf index.php umgeschrieben.

                      Kommentar


                      • #12
                        http://www.mibau-datendesign.de/test/toplinks.gif

                        http://www.mibau-datendesign.de/abcjs

                        vorhandenes htaccess:
                        PHP-Code:
                        RewriteEngine on
                        # Damit könnt Ihr "sagen" welche Dateien direkt aufgerufen werden können
                        RewriteCond %{REQUEST_URI} !.(.php$|.css$|.gif$|.js$|.png$)

                        RewriteBase /
                        RewriteRule index.php

                        ErrorDocument 404 
                        /index.php?f=404 
                        Zuletzt geändert von ; 05.08.2010, 14:25.

                        Kommentar


                        • #13
                          Wenn das Ziel ist, es bekannten Systemen nachzumachen, warum nicht einfach bei denen abschreiben?
                          The Definitive Guide to symfony | Chapter 3 - Running Symfony | symfony | Web PHP Framework
                          [drupal] Contents of /drupal/.htaccess
                          sorry, gerade erst gelesen :P

                          werde mich mal schlau lesen, danke Dir.

                          Kommentar


                          • #14
                            Zitat von onemorenerd Beitrag anzeigen
                            Schlimmer noch, ruf mal irgendeine GIF-Datei ab! Sollte funktionieren, tut es aber nicht. Denn das Pattern !.(...|.gif$|...) entspricht !..gif$, aber die RequestURI endet auf .gif mit nur einem(!) Punkt. Matcht also nicht, die Anfrage wird auf index.php umgeschrieben.
                            @onemorenerd: Nö. Dass ein Punkt jedes beliebige Zeichen matcht, egal ob es nun wirklich ein Punkt ist oder nicht, weißt du doch eigentlich, oder?
                            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                            Super, danke!
                            [/COLOR]

                            Kommentar


                            • #15
                              Oh ich dachte er hat den ersten Punkt escaped und das Forum den Backslash gefressen.
                              Aber gut, ist wohl nicht so. Funktioniert ja auf seiner Seite. Aber sinnvoll ist es dennoch nicht mit den zwei Punkten.

                              Kommentar

                              Lädt...
                              X