.htaccess с косой чертой или без нее - PullRequest
19 голосов
/ 12 февраля 2009

Что мне нужно сделать со следующим правилом перезаписи, чтобы оно работало, независимо от того, является ли оно косой чертой в конце URL?

т. http://mydomain.com/content/featured или же http://mydomain.com/content/featured/

RewriteRule ^content/featured/ /content/today.html 

Ответы [ 2 ]

34 голосов
/ 12 февраля 2009

Используйте $, чтобы отметить конец строки и ?, чтобы отметить предыдущее выражение, которое будет повторяться ноль или один раз:

RewriteRule ^content/featured/?$ content/today.html

Но я рекомендую придерживаться одной записи и исправить ошибку с ошибкой:

# remove trailing slashes
RewriteRule (.*)/$ $1 [L,R=301]

# add trailing slashes
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .*[^/]$ $0/ [L,R=301]
3 голосов
/ 06 августа 2013

простой способ сделать это:

RewriteEngine On
RewriteBase / 
RewriteRule ^content/featured(\/||)$ /content/today.html [L,R=301,NC] 
...