INIおよびXMLファイルへの直接アクセスを禁止する


10

一部のサイト所有者は、人々(特に競合他社)が自分のサイトにどのような機能を持っているかを知られたくない。

言語や設定ファイルの機密情報には、ブラウザから直接アクセスできるものがあるためです。

administrator/components/com_bank/language/en-GB/en-GB.com_bank.ini
administrator/components/com_bank/config.xml
components/com_bank/models/forms/transaction.xml

Joomlaについて知っている技術者だけがこれらのリンクを把握し、それらにアクセスして、サイトの機能を確認(または推測)できますが、サイトの所有者はすべてを秘密にしたいと考えています。

それでは、これらのINIおよびXMLファイルへの直接アクセスを禁止するサーバー側のソリューションまたはJoomla拡張機能はありますか?

回答:


13

このディレクティブを.htaccessファイル内に配置します。

<FilesMatch ".(ini|xml)$">
  order allow,deny
  deny from all
</FilesMatch>

ありがとうございました!この結果、403 forbidden error "Forbidden You't have a permission for access ... on this server。"が発生します。
Hung Tran

6

Joomlaの.htaccessファイルを、ファイルタイプのRewriteRuleで拡張できます。

単純なものは

RewriteRule \.xml$ index.php [L]
RewriteRule \.ini$ index.php [L]

これらのルールは、リクエストの最後が「.xml」または「.ini」であるかどうかをチェックし、リクエストをindex.phpに書き換えます。[L]は最後のルールを意味します。

これをセクションに入れてください

## Begin - Custom redirects

私はこれを試した結果、CSSスタイルがロードされていない私のホームページになりました。
Hung Tran

あなたのCSSファイルはxmlまたはiniで終わりますか?
Harald Leithner 2014

そうではありません。拡張子は.cssです。新しいJoomlaインストールでテストしました。
Hung Tran

3

サーバー上のファイルに直接アクセスする場合、Joomlaは関与しないため、Joomla拡張は不適切なアプローチになります。

.htaccessを使用するか、サーバーの設定を使用すると、必要なことを簡単に実現できます。このようなことがうまくいくはずです:

<Files  ~ "\.xml$">
  Order allow,deny
  Deny from all
</Files>

http://www.ducea.com/2006/07/21/apache-tips-tricks-deny-access-to-certain-file-types/から取得

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.