0

現在の URL

http://www.example.com/admin/data/img/gallery/myimages.jpg
http://www.example.com/admin/data/content/mycontents.html

そう

現在の SCRIPTS / HTMLS / FILES OF WEBPAGE CONTAIN とブラウザのソース コードでの表示

<img src="/admin/data/img/gallery/myimage.jpg">
<?php include("/admin/data/content/mycontents.html"); ?>

これは、「admin」という名前のフォルダー内の「CMS システム」です。

私がやりたいことは、ブラウザへのすべてのスクリプト/php/html出力からadminフォルダーを非表示にすることです。したがって、誰も見ることができないか、検索エンジンはこの領域をキャプチャできません (セキュリティ上の懸念) したがって、ブラウザがコンテンツまたはスクリプトを出力すると、上記の URL がこれに書き換えられます。

管理者の削除

 http://www.example.com/data/img/gallery/myimages.jpg
    http://www.example.com/data/content/mycontents.html

ブラウザのソースコード内

<img src="/data/img/gallery/myimage.jpg">

または データも削除する

http://www.example.com/img/gallery/myimages.jpg
http://www.example.com/content/mycontents.html

example.comだけでなくwww.example.comでも機能する必要があることも親切に助けてください

htaccess と mod_rewrite による解決策 httpd.conf へのアクセス権がありません。また、フォルダーを移動したくありません。フォルダーには多くのスクリプトが存在するため、多くのスクリプトを作成する必要があります。また、ルートまたは管理フォルダーのどこに配置すればよいか教えてください

ありがとうございました

4

1 に答える 1

0

これをドキュメント ルート (「admin」フォルダーがある場所) の .htaccess ファイルに追加してみてください。

RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}/admin/data/%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}/admin/data/%{REQUEST_URI} -d
RewriteRule ^(.*)$ /admin/data/$1 [L]

条件は、リクエスト URI の前に「/admin/data/」が追加されているかどうか、それが既存のファイルまたはディレクトリを指しているかどうかを確認します。その場合は、リクエストの前に「/admin/data/」があるように URI を書き換えます。ディレクトリを /admin/data にマップしたくない場合は、2 番目の条件 ( が付いているもの-d) を削除[OR]し、最初の条件からフラグを削除します。

于 2012-06-27T18:05:49.443 に答える