2017-11-09 22 views
0

サブフォルダにはいくつかのルールを適用しようとしていますが、別のサブフォルダには適用しません。Apache DirectoryMatchは1つのサブフォルダには適用されますが、別のサブフォルダには適用されません。

私はこの

SetEnvIf Referer "((.+\.)?domain\.com|localhost)" localreferer 
<DirectoryMatch "/bin(.+/)?"> 
    Require env localreferer 
</DirectoryMatch> 

を持っており、それが正常に動作しています。しかし今、私はこのルールが/ bin/publicには適用されないことが必要です。私は私が私が

SetEnvIf Referer "((.+\.)?domain\.com|localhost)" localreferer 
<DirectoryMatch "/bin/private(.+/)?"> 
    Require env localreferer 
</DirectoryMatch> 

と試みたが、すべてのビンのサブフォルダがすべてのリファラから許可されている/ binに/民間

のルールを適用する必要があり、プライベートおよび/ binに/公共/ binが/になります。

正しい正規表現は、/ binに/国民はどのリファラからアクセスできるようになりますどのようなだけで私が見つけた

+0

私は問題と解決策を見つけました。私はDirectoryMatchの代わりにLocationMatchを使用する必要がありますので、 SetEnvIf Referer "((。+ \。)ドメイン\ .com | localhost)" localreferer env localrefererが必要 victor

答えて

0

私はリストに事前に

感謝を持っているものから/ binに/秘密問題と解決策。私はDirectoryMatchの代わりにLocationMatchを使用する必要があるので、

SetEnvIf Referer "((.+\.)?domain\.com|localhost)" localreferer 
<LocationMatch "/bin(.+/)?"> 
     Require env localreferer 
</LocationMatch> 

<LocationMatch "/bin/public(.+/)?"> 
     Require all granted 
</LocationMatch> 
関連する問題