-1

年に一致するように htaccess を取得してから、ページを動的に書き換えようとしています

例: www.website.com/party/2013 から www.website.com/events.php?e=party

私は試した

Options +FollowSymLinks  
RewriteCond %{SCRIPT_FILENAME} !-d  
RewriteCond %{SCRIPT_FILENAME} !-f 
RewriteCond %{REQUEST_URI} events
RewriteRule ^(\w+)/%year%$ ./events.php?e=$1

しかし、これはうまくいきません

4

1 に答える 1

1

と照合するREQUEST_URIevents、これはソースではなくターゲット URL であるため、決して一致しません。現在の年はであり、 ではTIME_YEARありませんyearが、TIME_YEARでのみ使用できますRewriteCond。ターゲット URL がドットで始まっているため、機能しません。

ドロップしRewriteCond %{REQUEST_URI} eventsます。現在の年に対して URL を確認したい場合は、RewriteCondディレクティブで行うことができます。

RewriteCond %{TIME_YEAR}/$2 (....)/\1
RewriteRule /(\w+)/(\d\d\d\d) /events.php?e=$1

current year/URL yearRewriteCondは pattern に対してテストします(digits)/same digits as backreference。少しトリッキーですが、うまくいきます。

于 2013-01-11T22:36:26.553 に答える