【解説】 Ubuntuからレンタルサーバへアクセスするのが最適な理由。SSHとFTPのツールが快適!
ブログを書く為のレンタルサーバーの運用方法
みなさん、ブログを書く時にレンタルサーバーを使っていますか??
私は、エックスサーバーというレンタルサーバーを使っています。レンタルサーバーの上でWordPressを使ってブログを運用しています。
アメブロや、ライブドア、はてなブログなどを使う場合は、しっかりとした管理画面が出てきて、かなりカスタマイズが出来てしまういます。レンタルサーバーのようにサーバーの負荷を気にしたり、そもそもブログ以外の用途にそのサーバーを使いたいと思うケースは無いと思います。
でも、レンタルサーバーでWordPressというPHPで作られた、一種のアプリケーションを動かす場合、サーバーの状態を継続的に意識しておくのは、安定的にブログを運用していく上では必要なことなのです。
では、レンタルサーバーの状態を確認したり、サーバー上のファイルを更新したくなった時にどうしていますか??
ローカルのパソコンで変更したファイルをFTPでサーバーにアップロードして。。。などという作業が発生するかも知れませんね。そのような作業のために、Windowsのパソコンからレンタルサーバにアクセスして使っている方も多いかと思います。
私の場合は、ローカルのパソコンにUbuntu(Linuxのディストリビューションの1つ)を使っています。
今日は、FTPやSSH経由でレンタルサーバーを運用する際に、Ubuntuが最適な理由を徹底解説したいと思います。
あわせて読みたい:
サーバー上のファイルを変更したい時ってどんな時?
エックスサーバーは、サーバーパネルと呼ばれる、サーバーの設定のための設定画面が付いています。
これを使うと大抵のことは、この画面で完結します。例えば、最新のWordPressをサーバに設定した場合でも、「WordPress簡単インストール」という項目がサーバーパネル上に用意されています。この機能を使うことで、PHPの設定や、データーベースの設定など、面倒なことを一切せずに、WordPressの運用を開始することができていますのです。
では、なんで、サーバー上のファイルを直接編集したくなるのか??
いくつかの場合があります。
WordPressのプラグインが悪さをする
私は、エックスサーバーでのWordPressの運用を初めたての頃、プラグインの「更新」を行っただけで、それがエラーになり、ダッシュボードも含めて、画面が正しく表示されなくなった、という経験をしています。ダッシュボードのURLにアクセスしても、エラーが表示され、ブログのURLを直接叩いてもエラーが表示され、全く何もできなくなった経験があります。
ただ、そのときの状況としては、特定のプラグインの手動での更新が問題を引き起こしたのは明らかでした。そこで、何とか、プラグインを外そうと思いました。役に立ったのは、FTPでのサーバー・ディレクトリ(フォルダ)への直接アクセスです。
エックスサーバーの場合は、独自ドメイン名のフォルダ以下に、public_html/wp-content/pluginsのようなWordPressのフォルダが出来ます。そこ中の更新したプラグインの名前を持ったフォルダがあるので、それをまるごと移動して使えなくしてしまいました。その結果正しくWordPressが表示されたのです。
この場合、FTPでのバックエンドのファイルへのアクセスができない場合は、にっちもさっちも行かない状態になっていたのでは、と身震いします。
WordPressのエラーを解決したい
別のケースとしては、私が直接被った不具合ではありませんが、WordPressを使っている知人が受けた被害に関して。
かれは、WordPressのお知らせにある、「システムの更新」のオススメを行いました。したところ、書く記事サイトの一行目位に、PHPの処理のwarning が意図せずに表示されるという事態が発生しました。
その時はエックスサーバーのPHPのバージョンと、WordPressバージョンの相性に依存するエラーが検出されようでした。解決するには、FTP経由でWordPressの一部のPHPのプログラムファイルを編集する必要がありました。
WordPress以外のプログラムを動かしたい
また別の例としは、WordPressではなく、PHPやその他の言語で書かれた(or書きたい)プログラムをサーバー上で動作させたいケースです。
私の場合は、ブログとは全く異なる用途でサーバー利用しています。何かと申しますと、実は屋外にあるセキュリティカメラの画像を、FTP経由でエックスサーバーの自分のレンタルサーバーに送っています。定期的にアップロードされたファイルの枚数を数えメールで私自身のスマートフォンにメールが来る仕組みを構築しました。
これらは、Pythonのプログラムと、エックスサーバーが定期的にPythonプログラムを「cron」フレームワークを動作させるようにして実現しました。
Ubuntuなら変更する場合はこうする
UbuntuはLinuxです。「端末」と呼ばれるアプリケーションがシステム内部のディレクトリ構造の内部移動や、ちょっとしたファイルならその場で変更が可能です。
FTPで変更したファイルをアップロードするケース
ただし、ローカルに大量にファイルがあり、その大規模な複数ファイルをサーバにアップロードしたい場合はどのようになるでしょるか?
Windowsではフリーウエアや、シェアウエアなどでいわゆる「FTPクライアント」というジャンルのソフトを探せば、ローカルで編集したファイルをエックスサーバーのレンタルサーバーへ、FTPで転送することが可能です。
また、FTPクライアントなどは使わずに、Windowsエクスプローラ(ファイルやファイルの階層を移動しながら見渡せるツール)にFTPクライアント機能が付いているので、サーバーのアドレス、パスワードなど必要な情報を使って、便利に使えます。
しかし、この方法はいまいちです。一々、「ローカルで編集→FTPでサーバへアップロード」を繰り返すことになっていまいます。
ところがUbuntuの場合は、Linuxですので、FUSEやGvpfsと言った技術を使うことで、あたかもサーバサイドのファイルを直接編集することが可能になるのです。サーバー側のファイルを直接「エディタ」ソフト(e.g. Atomや Sublime textなどモダンなテキスト編集アプリが普及し始めています)で編集できるのです!
そして、この機能、つまりFTPサーバーへの直接アクセスが、Ubuntuのファイル管理ソフト「ファイル」が統合されているのです。つまり、一番重要なポイントは、ここに現れるファイルはWindowsのエクスプローラーと異なり「直接編集可能」ということなのです。
SSH経由で直接ファイルを改変するケース
また、WordPressとは異なるアプリをサーバー側で試しに実行してみたい場合は、SSHというコマンドを使って直接エックスサーバーにアクセスすることができます。
SSHと使うと、通常の「端末」のコマンドラインで開発中の機能を実行するのと同じような操作感で、サーバー側でスクリプトのプログラムが実行可能です。
SSHはサーバーとクライアント間の接続をセキュアにしたコマンドラインのプログラムです。SSHプロトコルを使用して、エックスサーバーにログインして直接サーバーの内部構造を変更したりプログラムの一部を実行することが出来ます。
エックスサーバーでの詳しいSSHの設定は以下のようなサイトで確認できます。
Auto Amazon Links: プロダクトが見つかりません。 http_request_failed: 有効な URL ではありません。 URL: https://ws-fe.amazon-adsystem.com/widgets/q?SearchIndex=All&multipageStart=0&multipageCount=20&Operation=GetResults&Keywords=4797386665|4816362924|4798149381|B01JG2WDRU|B06XB6TSY3&InstanceId=0&TemplateId=MobileSearchResults&ServiceVersion=20070822&MarketPlace=JP Cache: AAL_59e8f72bc156cbe4ebf10c607ced2311