Web」カテゴリーアーカイブ

MediaWikiのインストール方法を再確認

追加で設置することになったので、やり方を再確認
公式ドキュメントが英語いっぱいなので、日本語で書いておくと後が楽なのではないだろうか

1.必須環境を確認

  • Apache等のWebサーバ この用途だとnginxってのがいいらしい。今度試してみたい。
  • PHP
  • MySQL等のデータベース 最近はMariaDBってのがいいらしい。小規模な用途だとSQLiteにしてもいいのかも。今度試してみたい。

2.ブツをダウンロードしてサーバの好きなところに配置

ダウンロード先
最新stableは1.22.6だった。
サーバ内でwgetしてtarするのがカッコイイのたろうけど、フリーCGIの設置をしていたころのクセで、いったんWindowsでダウンロードしてからLhaplusなど適当なソフトでtar.gzを解凍して、FTPでサーバに送る。
ファイル数がすさまじいので、とんでもない時間がかかる。非推奨。
待ちながら、そもそも小規模な用途なのだから、もっと軽量なwikiプログラムを探してもいいのではないか、というようなことを考える。

3.インストール画面にアクセスする。

ブラウザで、

http://ドメイン/パス/mw-config/index.php

4.後は画面の指示に従う

最初の画面では、特別な理由がなければ日本語を選択。
次の画面では動作環境が自動でチェックされ、その結果が表示される。Gitがないとか、Unicode 正規化ラッパーなるものが古いとか言われたが、OKらしい。
3つ目の画面にてデータベースとの接続を要求される。この画面は残しておいて、MySQLに空のデータベースとそれにアクセスできるユーザを作成。phpMyAdminを使うと楽ちん。終わったらMediaWikiのインストール画面に戻って今の内容を入力。
4つ目の画面ではデフォルトどおりInnoDBとバイナリを選択。ここは好み。
次の画面でwikiの名前と管理アカウントを作成。「私にもっと質問してください」を選択して次の画面で追加のオプションを表示させる。
「利用者権限のプロファイル」は、基本的に自分を含む少人数だけが編集する用途なので「承認された編集者のみ」を選択。
さらに次々と進むとLocalSettings.phpがダウンロードできる。
これをMediaWikiのディレクトリにアップすれば、ブラウザから利用可能になる。

その後の処理

左上の画像のところがSet $wgLogo to the URL path to your own logo image.などとロゴ画像を決めるように催促してきてウザいが、そんなもの作る気はない。
LocalSettings.phpの
$wgLogo = “$wgStylePath/common/images/wiki.png”;
のところを
$wgLogo = “$wgStylePath/common/images/mediawiki.png”;
に変えればとりあえずOK。

スマホからのアクセスがある程度含まれることを想定しているので、この設定を行う

iOS7にしたiPhone5で横長の画像を横幅合わせで壁紙に指定する

…ことはできないようなのだ。
どうしてもしたければ、画像の上下に帯を追加することで強引に横幅全体を表示できる壁紙となる。
というワケで、画像をそのように加工するWebサービスを作ってみた。

成果物

  • 送信された画像ファイルを、iPhone5で壁紙にする際全体が入りきるように、上下に帯を追加して返します。
  • PNG,GIF,JPG,BMP形式に対応します。
  • 容量制限3MB(実際には2MBくらいでもだいぶきついです)



自動(試験的)

MediaWikiの表示をパソコンとスマホで切り替わるように

まず、スマホ対応のスキンを以下よりダウンロード。

配布サイト

ダウンロードしたWPtouch.phpとwptouchフォルダをMediaWikiのskinsディレクトリに入れる。

次にLocalSettings.phpを以下のように変更。

$wgDefaultSkin = 'vector';

if (preg_match("/(mobile|webos|opera mini)/i", $_SERVER['HTTP_USER_AGENT'])) {
    $wgDefaultSkin = 'wptouch';
} else {
    $wgDefaultSkin = 'vector';
}

 

 

 

iOS7以降のiPhone(iCloud)のリマインダーと、ThunderbirdのLightningでTODOを同期する

9月上旬くらいまでこちらの方法でiPhone(iCloud)のリマインダーとThunderbirdのLightningでTODOを同期して利用していたが、しばらく前からLightning側がエラーで同期できなくなった。

調べてみると、iOS7のダウンロード開始と同時にiCloudもリニューアルされたらしく、その影響と推測される。

参考サイトのツールで「リマインダー」のアドレスを確認してみると、以前使用していた

https://p01-caldav.icloud.com/xxxxxxxx/calendars/tasks/

から

https://p01-caldav.icloud.com/xxxxxxxx/calendars/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/

に変わっていた。

新しいアドレスに変更すると、以前のように同期できた。

解決。

 

jQuery mobileのgridの幅を調整する

スマホっぽいUIのサイトを手軽に作れるjQuery mobileだが、グリッドの幅を調整できないのが不満だった。

<div style="width: 10em;"></div>

などとしても無視されてしまう。
どうやらこういう仕様であるようだ。
20130228-222645.jpg

解決方法は、考えてみれば単純なものだった。

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title></title>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
    <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
    <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
    <style type="text/css">
<!--
.mygrid-main .ui-block-a{
    width:6em;
}
.mygrid-main .ui-block-b{
    min-width:12em;
}
-->
    </style>
</head>
<body>
<div data-role="page" id="main" data-theme="b">
    <div data-role="content">
        <div>
            <div><a href="http://localhost/" data-role="button">1</a></div>
            <div><a href="http://localhost/" data-role="button">2</a></div>
        </div>
    </div>
</div>
</body>
</html>

20130228-223735.jpg
できた。