it-swarm-vi.com

Cấm truy cập trực tiếp vào INI và các tệp XML

Một số chủ sở hữu trang web không muốn mọi người, đặc biệt là đối thủ cạnh tranh của họ biết những tính năng họ có trên trang web của họ.

Bởi vì một số thông tin nhạy cảm trong các tệp ngôn ngữ hoặc cấu hình có thể được truy cập trực tiếp từ trình duyệt, vd.

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

Mặc dù chỉ những người kỹ thuật biết về Joomla mới có thể tìm ra các liên kết này, truy cập chúng và tìm hiểu (hoặc đoán) những tính năng mà trang web có, tuy nhiên chủ sở hữu trang web muốn mọi thứ được bí mật.

Vì vậy, có bất kỳ giải pháp phía máy chủ hoặc bất kỳ tiện ích mở rộng Joomla nào để cấm truy cập trực tiếp vào các tệp INI và XML này không?

10
Hung Tran

Đặt lệnh này trong tệp .htaccess Của bạn:

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

Bạn có thể mở rộng tệp .htaccess của Joomla bằng RewriteRule cho các loại tệp có.

Một đơn giản có thể là

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

các quy tắc này kiểm tra xem phần cuối của yêu cầu là ".xml" hay ".ini" và viết lại yêu cầu thành index.php. [L] có nghĩa là quy tắc cuối cùng.

Bạn nên đặt cái này trong phần

## Begin - Custom redirects
6
Harald Leithner

Một phần mở rộng Joomla sẽ là cách tiếp cận sai vì Joomla không liên quan khi bạn truy cập trực tiếp các tệp trên máy chủ.

Bạn có thể đạt được những gì bạn muốn một cách dễ dàng với .htaccess hoặc trong cấu hình máy chủ của bạn. Một cái gì đó như thế này nên thực hiện các mẹo:

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

Lấy từ http://www.ducea.com/2006/07/21/Apache-tips-tricks-deny-access-to-certain-file-types/

3
Bakual