ファイル転送~ディレクトリ構造

1. サイト管理者・Web特権ユーザー用ディレクトリ

サイト管理者がFTPでサーバーに接続した時にアクセスできるディレクトリ構造です。

ディレクトリ		                              パーミッション	                	主な用途
	  /(ルートディレクトリ)
	  |
	  +-------------------	home		700 (rwx------)		HTML・CGI・PHP・SSI
	  |
	  +-------------------	cgi-bin		700 (rwx------)		お客様のCGI
	  |
	  +-------------------	cgi-def		700 (rwx------)		サービス提供側CGI	  	 	 
	  |
	  +-------------------	app-def		700 (rwx------)		サービス提供側PHP
	  |
	  +-------------------	data	                700 (rwx------)		Web上で非公開のファイル
	  | 	  	  	 
	  +-------------------	anonymous	750 (rwxr-x---)		AnonymousFTP
	  | 	  	  	 
	  +-------------------	log       755 (rwxr-xr-x) 	
	  |				| 	  	 
	  |				+--    www  700 (rwx------)		Webのログファイル
	  |				| 	  	 
	  |				+--    ftp    700 (rwx------)		FTPのログファイル
	  |
	  +-------------------	.well-known	700 (rwx------)		SSL証明書の認証
	  	  	 

サイト管理者とWeb特権ユーザーは上記のディレクトリを共有します。設置したファイルはサイト管理者の持ち物として扱われ、サイト管理者のディスク領域を使用します。

各ディレクトリのパーミッションは変更しないでください。制限の弱いパーミッションに変更すると、第三者による不正アクセスや攻撃の標的となるリスクが発生しやすくなります。

各ディレクトリの用途は以下のとおりです。

  • / (ルートディレクトリ)
    お客様のディスク領域において一番上の階層となるディレクトリです。

  • /home
    ホームページのコンテンツを置くディレクトリです。HTMLだけでなく、CGI・PHP・SSIを使用したコンテンツも設置できます。
    このディレクトリがホームページのドキュメントルートになります。
    SSL用のドキュメントルートとしても管理されます。

  • /cgi-bin
    お客様のCGIを置くディレクトリです。CGIは /home に置いても動作します。必ずこのディレクトリに置かなければならないということはありません。

  • /cgi-def
    サービス提供側CGI(Perl・RubyなどCGIとして動作するアプリケーション)が置かれるディレクトリです。このディレクトリにはお客様のコンテンツを設置しないことを推奨いたします。

  • /app-def
    サービス提供側PHPが置かれるディレクトリです。このディレクトリにはお客様のコンテンツを設置しないことを推奨いたします。

  • /data
    インターネットから直接アクセスされたくないファイルを置くディレクトリです。インターネットに公開する必要がないファイルはこのディレクトリに設置することを推奨いたします。
    また、CGI・SSIを利用した場合はこのディレクトリ配下のファイルにもアクセス可能ですので、CGI・SSIのデータファイルを設置する用途にもご利用いただけます。

  • /anonymous
    AnonymousFTP用のディレクトリです。AnonymousFTP機能をONにしてこのディレクトリ内にファイルを置くと、そのファイルをAnonymousFTPでダウンロードできるようになります。

  • /log/www
    Webのログファイルが置かれるディレクトリです。

  • /log/ftp
    FTPのログファイルが置かれるディレクトリです。

  • /.well-known
    SSLサーバー証明書発行申請時に使用する認証ファイルを置くディレクトリです。

2. Webユーザー用ディレクトリ

WebユーザーがFTPでサーバーに接続したときにアクセスできるディレクトリ構造です。サブディレクトリはありません。

ディレクトリ パーミッション 主な用途
/ - HTML

ディレクトリの用途は以下のとおりです。

  • / (ルートディレクトリ)
    ホームページのコンテンツを置くディレクトリです。 CGI・PHPを使うことはできません。
    Webユーザーにはそれぞれ個別のルートディレクトリが割り当てられます。FTPで接続したときはルートディレクトリとして見えますが、実体はサイト管理者・Web特権ユーザー・他のWebユーザーがFTPで接続したときに見えるルートディレクトリとは別のディレクトリであるため、自分以外のルートディレクトリにはアクセスできません。