Osukini がサービスを終了するというので、さくらVPS に移行しました。テスト投稿と自分用の備忘録を含めて何をしたかを以下に書いておきます。

作業の流れ

  1. バックアップを取る
  2. 新しいサーバーの設定をする
  3. バックアップしておいたファイルを復旧
  4. ちょちょいと調整する

1. バックアップを取る
MySQL のデータベースと、Wordpress 本体含め諸々のファイルをバックアップする必要があります。

MySQL はphpMyAdmin から適当にSQL 形式でバックアップを取り、Wordpress のファイルはディレクトリごと新しいサーバーにSCP でコピーしました。

2. 新しいサーバーの設定をする
さくらVPS を使うことにしたので、適当に設定しました。OS はCentOS でした。他にも選べたのかしら?

こちらを参考にしました。

さくらの格安VPSを借りたらいつもやっている設定いろいろ IDEA*IDEA
http://www.ideaxidea.com/archives/2010/11/sakura_vps_settings.html

必要なさげなのはやってませんが。screen のインストールとか。それと、システムははじめから日本語だった気がします。

で、次はMySQL の設定を以下を参考にしてやりました。

MySQLの設定 初心者でもわかる!さくらVPS Sakura VPS 設定マニュアル
http://www.xn--vps-073b3a72a.com/11.html

次は、phpMyAdmin のインストールと設定。yum で入るとは便利ですね。

さくらVPSにphpMyAdminを入れて今日から君もMySQLをブラウザから操作できるの巻
http://plusblog.jp/8743/

これでひとまず設定は終わり。

3. バックアップしておいたファイルを復旧

バックアップしておいた、というかSCP でさくらVPS の方にコピーしておいたファイルを適切な位置に移動させます。

なんかCentOS は使ったこと無かったので適当にぐぐったら、ユーザーディレクトリの下にpublic_html を置いてその中にいろいろ置く、としている人が結構居た気がするので、今回はそれを真似してみました。

ユーザー名をhoge とすると、

/hoge/public_html/wordpress

となっている感じです。また、これらにはパーミッションを設定する必要があります。ついでに、ホームディレクトリのパーミッションも設定しておきましょう。これを忘れると、PermissionDenied 系のエラーが表示されるはずです。

chown -R apache:apache /hoge/public_html/wordpress
chmod 711 /home/hoge/

次に、さっき設定したphpMyAdmin を使って、前のサーバーでWordpress 用に使っていた名前のデータベースを作って、さらにそのユーザーも作ります。そのデータベースに先ほどバックアップしておいたSQL ファイルを読ませて以前の通りのデータベースを復旧します。

4. ちょちょいと設定をする

apache の設定をしなければWordpress が見えません。/etc/httpd/conf/httpd.confで、 VirtualHost を以下のような感じで設定します。ホスト名を自分のものにして、コピペすれば基本的に大丈夫なはず。

<directory /home/hoge/public_html/wordpress>
    AllowOverride All
    Options MultiViews SymLinksIfOwnerMatch IncludesNoExec

    <limit GET POST OPTIONS>
        Order allow,deny
        Allow from all
    </limit>
    <limitExcept GET POST OPTIONS>
        Order deny,allow
        Deny from all
    </limitExcept>
</directory>

NameVirtualHost *:80
<VirtualHost *:80>
  DocumentRoot /home/hoge/public_html/wordpress
  ServerName www.inashiro.com
  ErrorLog logs/www.inashiro.com_log
  CustomLog logs/www.inashiro.com_log common
</VirtualHost>

また、apache2 ではデフォルトでpublic_html が見えないようになっているようなので、それに対応するために/etc/httpd/conf/httpd.conf のUserDir とあるところを以下のように編集します。

まぁ、英語で説明がある通りにすれば良いので特に問題ないでしょう。

#
# UserDir: The name of the directory that is appended onto a user's home
# directory if a ~user request is received.
#
# The path to the end user account 'public_html' directory must be
# accessible to the webserver userid.  This usually means that ~userid
# must have permissions of 711, ~userid/public_html must have permissions
# of 755, and documents contained therein must be world-readable.
# Otherwise, the client will only receive a "403 Forbidden" message.
#
# See also: http://httpd.apache.org/docs/misc/FAQ.html#forbidden
#
<IfModule mod_userdir.c>
    #
    # UserDir is disabled by default since it can confirm the presence
    # of a username on the system (depending on home directory
    # permissions).
    #
    #UserDir disabled

    #
    # To enable requests to /~user/ to serve the user's public_html
    # directory, remove the "UserDir disabled" line above, and uncomment
    # the following line instead:
    # 
    UserDir public_html

</IfModule>

これが終わったら、apache を再起動すればOK。これで昔の通りWordpress がきちんと動くはずです。たぶん。

なんかキャッシュのプラグインとかが、悲しいことになっている気がしないでもないけど気にしない!

,

Macbook Air 13inch(late 2012)の8GB RAMモデルを使っているのだけれど、Windows上のMS Officeで作ったPDFを開くと著しく表示が重いことがしばしばあって困っていた。初めはプレビュー.appの問題かと思ったのだけれど、Adobe Readerではエラー表示が出るし、TeXShopは何も言わずにクラッシュするので、どうやらPDFの側の問題らしい。(フォントの埋め込みまわりがあやしいと思っているが未検証)

自分で作ったファイルならまだしも、他人からもらったPDFファイルだと如何ともしようがなく非常に不便だったので、相当適当だが対応策を考えた。あまりに適当な方法なので、忘れないために自分用の備忘録として書いておく。

  1. GhostScriptを用いてPDFファイルのすべてのページをJPG化する。
  2. プレビュー.appの機能を使って、それらをPDFにまとめ直す。

当然だが、ほとんどの場合もとのPDFファイルの容量よりも大きく画質が荒いものが出来るので注意が必要である。

1.の手順では以下のブログにあるスクリプトを利用させていただくと便利である。

Macはじめました。: PDFファイルをページ毎にJPEG化するスクリプト
http://hajimemasita.blogspot.jp/2009/08/pdfjpeg.html

孫引きになるが、大元の出典元のページが消えてしまっているので、念のためここにもスクリプト自体を引用しておく。

#!/bin/bash

if [ $# -ne 2 ];then
echo “Usage: $0 target.pdf outfile”
exit
fi

TARGET=$1
OUTFILE=$2

gs
-dSAFER
-dBATCH
-dNOPAUSE
-sDEVICE=jpeg
-r150
-dTextAlphaBits=4
-dGraphicsAlphaBits=4
-dMaxStripSize=8192
-sOutputFile=${OUTFILE}_%d.jpg
${TARGET}

これをpdf2jpgなどの名前にして、ターミナルでパスの通っているところに保存する。そして

pdf2jpg hoge.pdf fuga

などとすればカレントディレクトリにfuga_1.jpg、fuga_2.jpg、…というようなファイル名のJPGファイルがずらずらと出来上がる。

次に、2.の手順を行うために、出来たファイルを全て選択して[このアプリケーションで開く]を使ってプレビューで開く。そして、画像の順番が正しいことを確認してプリント機能を使ってPDFとして保存すればOK。

これでJPG画像をまとめただけのPDFが出来て、当然なんのエラーも吐かなくなるので快適(?)にプレビューで見ることができます。