XserverでSSHをしてscpコマンドでファイルをアップロードする方法について解説します。
- ReactやVueなどで作ったSPAをデプロイしたい
- WordPressはインストールしているけど、LPのようなページをアップしたい
主に静的なページをアップしたいときに使えます!
XserverにSSHする方法
まずは、SSHできるようにしましょう。
ログイン後「SSH設定」の状態を「ON」
ONにするにチェックをして、「設定する」を選択。
SSHを利用しない場合は、「OFF」にしておきましょう。
公開鍵認証鍵ペアの生成
パスフレーズを入力し、生成。
秘密鍵がダウンロードされます。(サーバーID.key)
公開鍵は何もせずに登録されます。
権限を変更
$ chmod 600 ダウンロードした秘密鍵(サーバーID.key)
SSH実行
サーバーIDやサーバー番号は、サーバーパネルのトップページから取得できます。
ポート番号は22ではないので、指定しましょう。
$ ssh サーバーID@サーバー番号.xserver.jp -i サーバーID.key -p 10022
ちなみに~/.ssh/config
はこんな感じです。必要であれば参考にしてください。
Host xserver
Hostname サーバー番号.xserver.jp
User サーバーID
IdentityFile ~/.ssh/サーバーID.key
Port 10022
~/.ssh/config
で設定したあとは下記のコマンドでもSSH可能です。
$ ssh xserver
モグモグさん
SSHが成功したら完了!
scpでファイル(ディレクトリ)アップロード
SSHができるようになったので、scpでファイルをアップロードします。
Xserverでファイルを置く場所
Xserverはpublic_html
というディレクトリにファイルを置くことで公開できます。
ディレクトリは、下記の通りです。
/home/サーバーID/ドメイン/public_html/
例
/home/サーバーID/mo-gu-mo-gu.com/public_html/
例えば…
/home/サーバーID/ドメイン/public_html/test/index.htmlというファイルを置くと
https://ドメイン/test/で表示できます!(index.htmlは勝手に読んでくれます)
scpでアップロード
最後にscpコマンドでアップロードしましょう。
public_html
以下のディレクトリは任意に決めておきましょう。
ファイルをアップロード
$ scp sample.html サーバーID@サーバー番号.xserver.jp:~/ドメイン/public_html/任意のフォルダ/ -i サーバーID.key -p 10022
ディレクトリの中のファイルを一括でアップロード
$ scp -r sampleDir/* サーバーID@サーバー番号.xserver.jp:~/ドメイン/public_html/任意のフォルダ/ -i サーバーID.key -p 10022
ディレクトリをアップロード
$ scp -r sampleDir サーバーID@サーバー番号.xserver.jp:~/ドメイン/public_html/任意のフォルダ/ -i サーバーID.key -p 10022
~/.ssh/config
を設定している場合は、こんな感じです。
$ scp sample.html 設定したホスト名:~/ドメイン/public_html/任意のフォルダ/
モグモグさん
より簡易にかけるので設定することがおすすめ!
まとめ
XserverでSSHをできるようにし、scpコマンドでファイルをアップロードする方法について解説しました。
WordPressを運営していて、別のアプリケーションを動かしたいとか、LPページをWordpressと別に運用したいなどいろいろ幅が広がると思います。
ぜひ参考にしてみてください!