WebDAV サーバを立てて Zotero で使う
Zotero では、WebDAV サーバをファイルの保存先に設定することができるらしい。
そこで、自前で WebDAV サーバを用意してみる。
WebDAV サーバの設定
https://ホスト名/zotero/ でアクセスできるように設定する。実際のディレクトリは /var/www/zotero にある。今回はひとまず自己署名 SSL + Digest 認証にした。
WebDAV に使うディレクトリの作成
$ sudo su # mkdir /var/www/zotero # chown www-data:www-data /var/www/zotero # chmod 775 /var/www/zotero
自己署名証明書の作成
# hostname WebDAVで使うホスト名 # make-ssl-cert generate-default-snakeoil --force-overwrite # hostname 元のホスト名
として、以下の2ファイルを生成する。
モジュールの有効化
# a2enmod dav # a2enmod dav_fs # a2enmod ssl
自分の場合はすでに epgrec で auth_digest を使っていたが、そうでなければ下のコマンドで有効にする。
# a2enmod auth_digest
Digest 認証に使うユーザ名・パスワードの設定
# cd /etc/apache2/ # htdigest .htdigest 'zotero' 適当なユーザ名 Adding password for 適当なユーザ名 in realm zotero. New password: [パスワードを入力] Re-type new password: [確認のためにもう一度入力]
zotero.org のユーザ名・パスワードと揃える必要はない。ファイル .htdigest が存在しない場合はオプション -c をつけて実行する。
Apache の設定ファイルの作成
/etc/apache2/sites-available/default-ssl を元にして、/etc/apache2/sites-available/zotero を次の内容で作成した。
<IfModule mod_ssl.c> <VirtualHost _default_:443> ServerName example.com ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/zotero> DAV On Options None AllowOverride None Order allow,deny Allow from all AuthType Digest AuthName "zotero" AuthUserFile /etc/apache2/.htdigest Require valid-user </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn (以下SSLの設定などはそのまま)
また、非SSLでのアクセスを拒否するため、適当な設定ファイル*1に以下の内容を加えた。
<Directory /var/www/zotero> SSLRequireSSL </Directory>
設定を有効にして Apache を再起動
# a2ensite zotero # service apache2 restart
Firefox アドオン版 Zotero の設定
スタンドアロン版 Zotero の設定
スタンドアロン版 Zotero への例外の追加
自己署名の証明書なので、そのままではエラーとなって WebDAV での同期ができない。よってスタンドアロン版でも例外を追加する。
上記の方法によって Firefox で例外を追加していれば、(Firefox のプロファイル)/cert_override.txt に対応する行が存在しているはずである。例えば、ホスト名が example.com であれば、
example.com:443 OID.2.16.840.1.101.3.4.2.1 00:11:22:33:44:55:……
のようになっている。
この行をコピーし、(Zotero のプロファイル)/cert_override.txt というファイル名で保存する。Zotero のプロファイルフォルダは、デフォルトであれば ~/.zotero/zotero/ランダム英数.default に存在する。