パブリッシュ

Expression Webでは、サーバへファイルをアップロードすることをパブリッシュ (発行) と呼称しています。

サーバへの接続設定

パブリッシュ先の追加

メニューの【サイト → パブリッシュの設定】を実行し、表示されるウィンドウの[パブリッシュ]タブの[追加]ボタンをクリックすることで、パブリッシュ先を追加できます。

[接続の設定]では、サーバの情報に従って設定します。

接続の種類には、

  • FTP (File Transfer Protocol)
  • SFTP (SSH File Transfer Protocol)
  • FTPS (FTP over SSL/TLS)
  • FrontPage Server Extensions
  • WebDAV
  • ファイル システム

があります。

たとえばさくらインターネットへFTPSで接続するならば、[接続の種類]でFTPSを選択し、

区分 設定項目 契約サービスの接続情報
場所 場所 FTPサーバ名 ftps://AccountName.sakura.ne.jp
ディレクトリ FTP初期フォルダ www
資格情報 ユーザー名 FTPアカウント AccountName
パスワード サーバパスワード  
ファイル転送ソフトの設定|さくらのレンタルサーバ|さくらインターネット公式サポートサイト

のように設定します。

転送方法の設定

メニューの【ツール → アプリケーション オプション】の[FTP]タブで、FTPでの転送方法を設定できます。

ファイアウォールの内側から接続するならば、[パッシブFTPを使用する]をチェックします。

[ASCII形式で転送するファイルの拡張子]のリストに含まれる拡張子のファイルは、転送時にCRLFとLFの改行文字の変換が行われます。これはFFFTPの転送モードに同じです。

コードの最適化

サイトの設定ウィンドウで[パブリッシュ時にHTMLを最適化する]にチェックを入れておくと、パブリッシュ時にコードの最適化が自動で行われます。

どのように最適化するかは、[ユーザー設定]ボタンから[HTML 最適化設定]を開くことで指定できます。

HTML 最適化設定 (HTML Optimization Settings)

コメントの削除

  • すべての HTML コメント
  • ダイナミック Web テンプレートのコメント
  • スクリプトのコメント
  • その他のすべての HTML コメント

スペースの削除

  • HTML 内の先頭スペース
  • HTML 内のすべてのスペース
Expression Web:4. HTMLの最適化 - スペースの削除
基のコード
<body>
	<p>ABC   <b>DD</b>   </p>
	<ul>
		<li>1  </li>
		<li>  2</li>
	</ul>
<pre>
  a
    b
  c
</pre>
</body>
先頭スペースを削除
<body>
<p>ABC   <b>DD</b>   </p>
<ul>
<li>1  </li>
<li>  2</li>
</ul>
<pre>
a
    b
  c
</pre>
すべてのスペースを削除
<body><p>ABC <b>DD</b> </p><ul><li>1 </li><li>2</li></ul>
<pre>
  a
    b
  c
</pre></body>
先頭とすべてのスペースを削除
<body><p>ABC <b>DD</b> </p><ul><li>1 </li><li>2</li></ul>
<pre>
a
    b
  c
</pre></body>

生成された HTML の削除

  • Expression Web トレース用イメージおよびインタラクティブ ボタンの属性
  • Generator および ProgID タグ

パブリッシュしないファイルの指定

フォルダーリスト パネルで対象とするファイルを右クリックし、[パブリッシュから除外]をクリックすることで、パブリッシュの対象から除外できます。

除外したファイルは、[パブリッシュ ビュー]でその一覧を確認できます。それにはメニューの【サイト → パブリッシュ】をクリックし、[表示]から[除外されたファイル]を選択します。

パブリッシュの実行

サイト全体をパブリッシュ

サイト全体をパブリッシュするならば、メニューにある次のいずれかから実行できます。ただしパブリッシュから除外されているファイルは、パブリッシュされません。

  • 【サイト → すべてのファイルを"サイト"にパブリッシュ】 … ホスト側にないファイルは、削除の確認を求められる。Expression Web 4:すべてのファイルをパブリッシュするには
  • 【サイト → 変更されたファイルを"サイト"にパブリッシュ】 … ホスト側にないファイルは無視され、更新されない。

サイト内のファイル数が多いと、これらの機能はたいへん時間がかかります。そのような場合はサイトの概要レポートのファイルで、対象のファイルを絞り込んだうえで個別にパブリッシュします。

特定のファイルをパブリッシュ

個別にファイルをパブリッシュするならば、[フォルダー リスト]で対象ファイルを右クリックし、[選択したファイルを"…"にパブリッシュする]を実行します。編集中のファイルが対象ならば、そのファイルのタブを右クリックすることでも、同様に処理できます。

パブリッシュ ビュー (Publishing view)

[パブリッシュ ビュー]では、ローカルとホスト双方のファイルを確認しながら、アップロードとダウンロードを行えます。このビューは、

  • サイトビュー下部の[パブリッシュ]タブ
  • メニューの【サイト → パブリッシュ】
  • メニューの【表示 → サイト → パブリッシュ】

のいずれかから開けます。パブリッシュ ビュー | MSDN

ファイル一覧
ファイルの状態 意味
変更なし 最後のパブリッシュから、変更されていない。
不一致 ローカルにあるファイルがホスト側にない。または、ホストにあるファイルがローカル側にない。
競合 ローカルまたはホストで、同期されずにファイルが変更された。
ファイルのパブリッシュの状態 | MSDN

ちなみにローカルやホストのパスは上部のアドレスバーで確認できますが、これをマウスで右クリックすることで、そのパスのテキストをクリップボードにコピーできます。また右クリックした後はそのテキストのコントロールにフォーカスが合うため、キーボードからでも操作できます。

パブリッシュの状態

パブリッシュの経過と結果は、メニューの【パネル → パブリッシュの状態】で確認できます。パブリッシュ状態パネル | MSDN

ログ

ログを記録するように設定しているならば、パブリッシュ後にそれを確認できます。それはメニューの【サイト → サイト設定】から開けるサイトの設定の[パブリッシュ]タブにあり、[ログ ファイルの表示]をクリックすることで表示されます。また記録の設定もここにあり、[パブリッシュ時の変更をログ ファイルに記録する]にチェックを入れることで、記録されるようになります。

このログ ファイルの実体はInternet Explorerのキャッシュ フォルダにあり、パブリッシュを行うごとに同じファイルに上書きされます。

なお簡単な記録ならば、パブリッシュ ビューの[ログ]タブでも確認できます。

ファイルのパーミッション

ファイルのパーミッションの確認や変更は、Expression Webでは行えません。よって他のツールを使用する必要があります。なおパブリッシュによってファイルを上書きしても、パーミッションの設定は維持されます。ですので他のツールでパーミッションを変更した後は、Expression Webからパブリッシュしても問題ありません。

パーミッションの設定が維持されない場合もあるようです。そのような場合には対象ファイルをパブリッシュから除外しておくことで、予期せず上書きされることはなくなります。

トラブル対処法

上書きの確認

パブリッシュ時に「パブリッシュ先で変更されているアイテムがあるため、続行すると上書きされます。」と表示され、確認を求められることがあります。これはサーバー側で変更を加えられたか、もしくは他のツールでパブリッシュした場合に発生します。これには指示に従い、そのファイルをパブリッシュしないならば[無視して継続]、するならば[リモート ファイルを上書き]を選択します。

サーバーへの接続に失敗

まず、ネットワークに接続されているか確認します。

接続できない

ポート ** を使用して 'example.com' に接続できません。サーバー名とプロキシ設定を確認してください。設定が正しい場合は、サーバーが一時的に使用できなくなっている可能性があります。

設定に間違いがないならば、しばらく待ってから再度パブリッシュを試みます。

Secure connection was closed

Secure connection was closed by the remote connection end.

接続の種類をFTPSとしているならば、サーバーがTLS 1.0か1.1をサポートしているか確認します。

サイトがない

"***" という名前のサイトはありません。

サイトが存在しているのが確かならば、アクセスが制限されていないか確認します。

フォルダーがない

フォルダー 'FolderName' はリモート Web サイトにありません。その場所にフォルダーを作成しますか?

指定のフォルダが存在しているのが確かならば、そのフォルダのパーミッションを確認します。たとえば.ftpaccessでアクセスが制限されている場合にも、このようなエラーとなります。

FTP 受信モードが利用できない

FTP 受信モードは利用できません

ネットワークとの接続に問題がないか確認します。