Heim >PHP-Framework >YII >Wie kann ich den URL-Manager von YII verwenden, um seo-freundliche URLs zu erstellen?
Der URL-Manager von YII ist ein leistungsstarkes Werkzeug zum Erstellen von sauberen, seo-freundlichen URLs. Anstatt sich auf die Standardeinstellung zu verlassen, oft überfüllte URLs, die von YII generiert werden, können Sie benutzerdefinierte Regeln definieren, die Ihre URLs in etwas benutzerfreundlicheres und suchmaschinenoptimierteres verwandeln. Dies beinhaltet die Konfiguration der urlManager
-Komponente in der Konfigurationsdatei Ihrer Anwendung ( config/web.php
oder config/main.php
, abhängig von Ihrer YII -Version).
Der Kern der SEO-freundlichen URL-Kreation liegt in der Verwendung von URL-Regeln. Diese Regeln definieren die Zuordnung zwischen der internen Routenstruktur Ihrer Anwendung und den an den Benutzer angezeigten URLs. Anstelle einer URL wie /index.php?r=site/view&id=123
können Sie beispielsweise eine sauberere URL wie /article/123
erstellen.
Um dies zu erreichen, müssen Sie die rules
der urlManager
-Komponente konfigurieren. Diese Eigenschaft ist eine Reihe von Regeln, die jeweils ein passendes Muster und die entsprechende Route definieren. Hier ist ein Beispiel:
<code class="php">'urlManager' => [ 'class' => 'yii\web\UrlManager', 'enablePrettyUrl' => true, 'showScriptName' => false, 'rules' => [ ['class' => 'yii\rest\UrlRule', 'controller' => ['article']], //Example for RESTful APIs '<controller:>/<id:>' => '<controller>/view', // Matches /article/123 and routes to the 'view' action of the 'article' controller. '<controller:>/<action:>' => '<controller>/<action>', // Matches /article/create and routes to the 'create' action. // Add more rules as needed ], ],</action></controller></action:></controller:></controller></id:></controller:></code>
enablePrettyUrl
Prettyurl aktiviert Pretty URLs (Entfernen von index.php) und showScriptName
verbirgt den Skriptnamen (index.php) aus der URL. Die Regeln selbst verwenden reguläre Ausdrücke, um URL -Segmenten zu entsprechen. <controller:></controller:>
entspricht einem oder mehreren alphanumerischen Zeichen für den Controller -Namen und <id:></id:>
entspricht einer oder mehreren Ziffern für die ID.
Das Erstellen von SEO-freundlichen URLs ist nur der erste Schritt. Die Optimierung Ihres URL -Managers für SEO beinhaltet mehrere Best Practices:
/product/123
betrachten /product/awesome-widget
.-
), nicht unterstrichen ( _
). Suchmaschinen verstehen Bindestriche besser.rules
entsprechend aktualisieren.urlManager
von YII. Viel umgeht, kann ein dediziertes URL -Umschreibmodul zusätzliche Leistung und Flexibilität bieten. Dies ist besonders relevant, wenn es sich um komplexe Umschreibungsszenarien handelt.Die effektive Verwaltung von URL -Parametern ist für SEO von entscheidender Bedeutung. Während Parameter manchmal erforderlich sind, sollten Sie sich bemühen, ihre Sichtbarkeit in der URL nach Möglichkeit zu minimieren.
Verwenden Sie benannte Parameter: Verwenden Sie anstatt sich auf Positionsparameter zu verlassen, und verwenden Sie die benannten Parameter in Ihren Regeln, um sie lesbarer und wartbarer zu gestalten.
<code class="php">'<controller>/<action>/<param1:>/<param2:>' => '<controller>/<action>',</action></controller></param2:></param1:></action></controller></code>
Mit dieser Regel können Sie in Ihrer Controller -Aktion auf param1
und param2
zugreifen. Sie können auch komplexere reguläre Ausdrücke verwenden, um die Parameter zu validieren.
Verwenden von Abfrageparametern sparsam: Während der Abfrageparameter manchmal unvermeidlich sind, versuchen Sie, sensible Daten oder unnötige Informationen einzubeziehen. Halten Sie sie prägnant und relevant. Zum Beispiel /search?q=widget
/search?q=widget&sort=relevance&page=2&filter=price
Benutzerdefinierte Routenerstellung: Für komplexe Routing -Szenarien können Sie benutzerdefinierte Routen erstellen, die die Logik der Parameterbearbeitung zusammenfassen.
Der URL-Manager von YII kann die URL-Umleitung effektiv bewältigen, sodass Sie alte, veraltete URLs zu ihren neuen, seo-freundlichen Gegenstücken umleiten können. Dies ist für die Aufrechterhaltung der Suchmaschinen -Rangliste und zur Vermeidung von 404 Fehlern von entscheidender Bedeutung. Dies erfolgt anhand der rules
der urlManager
-Komponente. Sie können die Umleitungsregeln mit dem folgenden Muster definieren:
<code class="php">'urlManager' => [ // ... other configurations ... 'rules' => [ // ... other rules ... '<old-url>' => '<new-url>', //Simple redirect ['class' => 'yii\web\UrlRule', 'pattern' => '<old-url>', 'route' => '<new-url>', 'verb' => 'GET'], // More robust redirect with verb specification ], ],</new-url></old-url></new-url></old-url></code>
Ersetzen Sie <old-url></old-url>
durch das alte URL-Muster und <new-url></new-url>
durch die neue, seo-freundliche URL. Sie können regelmäßige Ausdrücke im Muster <old-url></old-url>
verwenden, um mehrere Variationen alter URLs zu entsprechen. Zum Beispiel könnte /old-article/(\d )
alte Artikel-URLs zu ihren neuen Gegenstücken umleiten. Der verb
-Parameter stellt sicher, dass die Umleitung nur für GET -Anforderungen funktioniert.
Denken Sie daran, 301 (dauerhafte) Weiterleitungen zu verwenden, um Suchmaschinen zu signalisieren, dass der Inhalt dauerhaft verschoben ist. Dies hilft bei der Erhaltung der PageRank und zu vermeiden, den SEO -Wert zu verlieren. Sie können dies durch einen fortgeschritteneren Ansatz erreichen, der eine benutzerdefinierte Umleitungs -Controller -Aktion erstellt oder eine dedizierte Umleitungserweiterung für YII verwendet.
Das obige ist der detaillierte Inhalt vonWie kann ich den URL-Manager von YII verwenden, um seo-freundliche URLs zu erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!