2017-01-04 15 views
1

私はLaravel PHPフレームワークでかなり新しいです。私はプロジェクトを持っていて、正常に完了し、今は生産中です(オンライン切断)。しかし、今日、私は誰もが検索文字列とフォルダ名にスラッシュを追加するだけで、サイトのベースディレクトリにアクセスできることを知っていました。例えば私のウェブサイトのベースディレクトリはアクセス可能であり、公開されています。

誰かがこの

www.mywebsite.com

のように入力すると、ページが正しく動作していると、すべてのユーザーのアクセスが働いています。

誰かがこのよう

www.mywebsite.com/pages

を入力するとき、彼らは、フォルダに保存されているすべての私のページにアクセスすることができます。秘密で公開されていてはならないすべてのphpファイル。実際には、いくつかのページをフォルダ(ページ)に保存しています。

これはスクリーンショットです。公開されていないディレクトリにファイルを表示する。私が知っている

enter image description here

、私は小さなことをしないのですが、私はそれを取得する方法がわかりません。

+0

を働くことを願っていますオートインデックス

IndexIgnore * 

を防ぐために、この.htaccessファイルを試すことができますのindex.phpです。それ以外は、ルート、コントローラー、およびビューを使用することになっています。 – Devon

+0

[.htaccessの特定のフォルダへのアクセスを拒否する]の可能な複製(http://stackoverflow.com/questions/19118482/deny-access-to-one-specific-folder-in-htaccess) – Devon

+0

あなたの 'publicにあるもの/ .htaccess'? – martindilling

答えて

1

それは、あなたのホスティングから自動ディレクトリインデックスを停止動作しない場合は、あなたのリソース/ビュー/エラーが

をフォルダに404.blade.phpファイルを置きます。

あなたは私はあなたがLaravel、あなたが公共の場で持つべき唯一のPHPファイルを使用している場合、それは

0

index.phpファイルはどこですか?パブリックフォルダの中にindex.phpを入れてください。 .htaccessも適切な設定でそこになければなりません。

+0

index.phpはパブリックフォルダ内にあります。htaccessファイルがある <のIfModule mod_rewrite.c> <のIfModule mod_negotiation.c> オプション-MultiViews RewriteEngine #リダイレクト最後のスラッシュでない場合は、フォルダ... するRewriteCondの%{REQUEST_FILENAME}で!-d するRewriteRule ^( 。*)/ $/$ 1 [L、R = 301] #ハンドルフロントコントローラ... するRewriteCondの%{REQUEST_FILENAME}! するRewriteCondの%{REQUEST_FILENAMEを} -d!-f のRewriteRule^index.phpを[L] #Handle Authorization Header RewriteCond%{HTTP:Authorization}。 RewriteRule。* - [E = HTTP_AUTHORIZATION:%{HTTP:Authorization}] –

関連する問題