2012-01-31 17 views
0

私は正常に動作しているウェブサイトを持っています"Domain-name.com/images"それは私のサイトに存在する画像フォルダ内のすべての画像を表示します。なぜthis.mayがこれであるのか分かりませんディレクトリのアクセス許可に起因するのですか?しかし、私はそれの背後にある実際の理由を知りたいです ヘルプは高く評価されます。 注:Webサイトの作成中にこれらの人々がこの問題に直面する可能性があるため、PhpとHtmlにタグを付けています。ウェブサイトのセキュリティ権限を変更する

答えて

2

これは、フォルダにインデックスファイルがなく、Apache(Apacheと仮定)がディレクトリインデックスを実行するように設定されているためです。

いずれかの空のindex.htmlを作成したり、apache2.conf(またはhttpd.confの)のいずれかまたはのhtaccessファイルに次の行を追加します。

Options -Indexes 
+0

空のインデックスファイルを作成することは良い解決策にはなりません.2番目の方法はうまくいきました。私がドメイン名/イメージを作成しようとするとホームページにリダイレクトする場合は、インデックスファイルを作成します。右? –

+0

書き換えルールまたはインデックスファイルを使用できます。これをやりたいディレクトリがたくさんある場合を除き、インデックスファイルを使用します。 – Corbin

+0

問題ありません。 :-) – Corbin

1

あなたは.htaccessファイルを使用して、フォルダを制限することができます。

ウェブサイトのルートフォルダに.htaccessファイルを作成し、次のコードを追加します。

RewriteEngine on 
RewriteCond $1 !^(css|js|images) 
RewriteRule ^(.*)$ index.php/$1 [L] 
+0

これは書き換えを使用すると過度のように思えます。なぜ単にディレクトリインデックスを無効にしないのですか? – Corbin

+1

自分のWebサーバーがApacheであることを前提にしています。 Microsoft IISを使用している場合、これは機能しません。 – Jeff

+0

ポスターが指定されていない場合は、Apacheの95%です。 – Corbin

0

質問に答えてください:はい。それがウェブアクセス可能なディレクトリであれば、public_html、wwwなどの典型的なwebrootフォルダにあり、そのフォルダのアクセス権は誰でも見ることができます。

1

これは、イメージフォルダのディレクトリリストを許可するWebサーバーの設定に問題があります。例えば。最も一般的なサーバーソフトウェアであるApacheでは、httpd.confOptions -Indexesdirectoryセクションにスイッチをオフにします。

関連する問題