PHP用のプライベートフォルダの設定方法には、ローカルテスト用のファイルとライブ用のファイルが含まれています。

ここのnoobのビット。ここにはおそらく単純な解決策がありますが、それをテストするために非kludgey環境を作成したり作成したりすることはできません。これは部分的には答えられるかもしれませんが、私はまだ髪の毛を引っ張っています - だから私は尋ねるつもりです。

Linux VPSのライブパス(vhostsディレクトリに多数のサイトがある):

/var/www/vhosts/mysite.com/subdomains/mysubDomain/httpdocs/index.php /* the public, everyone can see web root directory */  

私はプライベートレベルのファイルフォルダを含むように構成できるようにしたい:

/var/www/vhosts/mysite.com/subdomains/mySubdomain/includes/myincludes.php  /*where I want the webserver only to read */  

注:アップロード後にプライベートファイルを移動するために同じレベルのディレクトリを使用したいと思います。

ローカルでは、次の場所に同様の構造を作成しようとしました。

C:\xampp\htdocs\mySubdomain\httpdocs  

1つの悪いアイデアは、ローカルvHostsファイルのDocumentRootをmySubdomainフォルダに設定することですが、次のようなディレクトリ構造を公開します:

  

- ライブサイトでは受け入れられません。

私のXAMPPテストサーバーでは、vhostsファイルを設定しました。mysite.localは次のように作成します

NameVirtualHost 127.0.0.1:80

     DocumentRoot C:/xampp/htdocs/
    ServerName localhost


    DocumentRoot "C:/xampp/htdocs/mySubDomain/httpdocs"
     ServerName mysite.local
     

しかし、その後、私はmySubdomainフォルダにある私のインクルードにアクセスすることができません。

質問:

  1. この全体のアプローチは、「ライブ」レベルのフォルダ(つまり、httpdocs/includes)のhtaccessに対して本当に有益ですか?私は複数の参照を見てきました。 "publicより下"のストレージは、より安全なファイルと優先フォルダ構造になります。
  2. includepathとDocument Rootの設定は同じですか?他の魔法と微妙な設定のバランス? httpdocs(htdocsのローカルフォルダではなくパブリックディレクトリと指定されている場所)のローカルテストアクセスを作成するにはどうすればよいですか?
  3. この設定でDreamweaverCS5.5を設定することが可能な場合は、ボーナス(およびnoob giveaway)を使用してテストやブラウザのチェックを行うための機能(インクルードファイルの自動検出など)
2
serverfault.com でさらに役立つかもしれません。
追加された 著者 Jeremy Harris,
おかげさまで、それについて知らなかった - 非常に興味深い、多分役立つかもしれませんが、そこでは解決されていないようです。現在私は、解決策にはphp_includeishの構文と適切な経路指定の組み合わせが関係している可能性が高いと考えていますが、明らかに分かりません。
追加された 著者 Chuck,

1 答え

  1. はい、そうです。たとえば、何らかの理由で誰かがウェブサーバを十分に壊してしまって、ウェブサーバ自体を破壊していない場合、人々は public/somebusinesslogic.php をダウンロードできますが、 private/somefilewithpasswordsはダウンロードできません。 PHP .htaccess ファイルはApache上でも無効にすることができます。Apacheの実際の内容によっては時間がかかることがあります。
  2. エラーの内容を一度に指定しなかったので、何がうまくいかないかは分かりませんが、Windowsでこの設定を模倣することは問題ではありません。 >
  3. DreamWeaverで作成した製品には、10フィートの極では触れないと思っていました。確かに、これは5年以上前です。
0
追加された
本当に私が得ていたエラーではなく、公然の領域(httpdocs/mypublicrootindex.php)にディレクトリを指定する必要がありませんでした。プライベートなhttpdocsディレクトリの部分を公開する必要がありますすべてのリンクのありがとうございますが、標準のhtaccessでフォルダを拒否することにしました。
追加された 著者 Chuck,
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com