0

htaccess を使用して、Joomla CMS で「単一の論理」URL を保護する必要があります。単一の URL を保護するための .htaccess コードを見つけましたか?

このソリューションは、特定の URL に最適です。

RewriteEngine On
RewriteCond %{REQUEST_URI}  ^/index\.php$
RewriteCond %{QUERY_STRING} ^option=com_content&task=view&id=76$
RewriteRule ^(.*)$ /secure.htm

ただし、URL 部分を交換したり修正したりできないようにするにはどうすればよいので、安全なアクセスを回避できます。たとえば、へのアクセスを許可したくない

option=com_content&task=view&id=76&dummy=1 
option=com_content&id=76&task=view

また。

私はこれを試しましたが、うまくいかないようです:

RewriteEngine On
RewriteCond %{REQUEST_URI}  ^/index\.php$
RewriteCond %{QUERY_STRING} option=com_content
RewriteCond %{QUERY_STRING} task=view
RewriteCond %{QUERY_STRING} id=76
RewriteRule ^(.*)$ /secure.htm
4

1 に答える 1

0

これらの URL のいずれかにアクセスすると、あなたのルールはうまく機能します。

  • http://localhost/index.php?blah=blah&option=com_content&task=view&id=76
  • http://localhost/index.php?option=com_content&task=view&id=76&dummy=1
  • http://localhost/index.php?option=com_content&id=76&task=view

でコンテンツが提供されます/secure.htm

ただし、クエリ文字列ルールに適切な境界を追加できます。

RewriteCond %{QUERY_STRING} (^|&)option=com_content(&|$)
RewriteCond %{QUERY_STRING} (^|&)task=view(&|$)
RewriteCond %{QUERY_STRING} (^|&)id=76(&|$)

のようなものに一致しないようにid=761

于 2012-09-20T15:15:46.827 に答える