.HTACCESS合并两个规则

时间:2017-12-29 00:09:35

标签: apache .htaccess mod-rewrite

1

init(iconName: String, target: Any?, selector: Selector){
    button.setImage(UIImage(named: iconName), for: .normal)
    button.addTarget(target, action: selector, for: .touchUpInside)
    // Rest of method follows
}

2

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ Ena.php?open=$1 [L,QSA]
RewriteCond %{QUERY_STRING} ^([^=]+)$
RewriteRule ^/?$ Ena.php?open=%1 [L,QSA]

我需要将这两个规则正确地合并在一起。它们单独工作(当一个被删除,另一个被删除),但它们一起不会。

1 个答案:

答案 0 :(得分:1)

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L,END]

RewriteRule "^(\x41|\x4F|\x53|\x4[CE]\x4A|D\xC5\xBD|\xC5\xA0|\xC4(?:\‌​x90|\x8C|\x8‌​6)?|\xC5\xBD|\x00-\xF4‌​8FBFBF|[A-Z])[^/]*$" "/? open=Encyclopedia&letter=$1&term=$0" [NE,L,QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ Ena.php?open=$1 [L,QSA]

RewriteCond %{QUERY_STRING} ^([^=]+)$
RewriteRule ^/?$ Ena.php?open=%1 [L,QSA]

如果按照上面的顺序进行操作,会发生什么?首先,我们检查系统上是否存在请求的内容,并按原样提供。 END指令是httpd-2.4 +的新指令,并将所有其他指令短路。