我知道如何限制对index.pl,search.pl,.js和.css文件以外的所有文件的访问:
RewriteEngine On
RewriteCond %{REQUEST_URI} !\.(jpe?g|gif|bmp|png|tiff|css|js)$ [NC]
RewriteRule ^(?!(index|search)\.pl).+$ - [F,NC]
我也知道如何重写链接:
RewriteEngine On
RewriteRule ^([A-Za-z0-9-]+)/((edit|delete))/([0-9]+)$ index.pl?mode=$1&action=$2&id=$3 [L]
RewriteRule ^([A-Za-z0-9-]+)/((add)/?$ index.pl?mode=$1&action=$2 [L]
RewriteRule ^([A-Za-z0-9-]+)/?$ index.pl?mode=$1 [L]
我如何能同时使用这个功能(只允许少量文件+重写链接)。
答案 0 :(得分:1)
在拒绝规则之前重写:
RewriteEngine On
RewriteRule ^([A-Za-z0-9-]+)/(edit|delete|info)/([0-9]+)$ index.pl?mode=$1&action=$2&id=$3 [L]
RewriteRule ^([A-Za-z0-9-]+)/(add)/?$ index.pl?mode=$1&action=$2 [L]
RewriteRule ^([A-Za-z0-9-]+)/?$ index.pl?mode=$1 [L]
RewriteCond %{REQUEST_URI} !\.(jpe?g|gif|bmp|png|tiff|css|js)$ [NC]
RewriteRule ^(?!(index|search)\.pl).+$ - [F,NC]