serendipity 1.5.5をインストールしました。
web serverはnginxを利用していますのでその設定も行っています。
オリジナルのbbcode pluginを少々いじって、横長でもレイアウトがおかしくならないようにしています。
なお、1.5-beta1の環境でlightbox plugin(serendipity_event_lightbox)をいれていると、IEでブラウズした際に問題が発生するためにlightbox pluginは未使用にしました。(問題確認環境はIE8/WinXP, IE6/WinXP)
1.5.5ではまだ未確認です。
2011年 2月 13(日曜日)
serendipity 1.5.5インストールとnginxの設定
うちの環境はこんな感じです。
まずはバックアップをとります。
新しいものを上書きします。
コンテンツに表示する日付のフォーマットを変更します。
bbcode pluginを少し変更します。
つぎにnginxの設定です。
以下のように設定しています。
/usr/local/nginx/conf/www.example.net.conf
/usr/local/nginx/conf/nginx.conf
つぎにブラウザでblogトップにアクセスします。データベースをアップしてくださいといわれるので指示にしたがってデータベースをアップデートします。以上で完了です。
- Arch: amd64
- OS(userland): NetBSD 5.1
- kernel: NetBSD 5.99.41
- nginx: 0.8.54
- PHP: 5.3.5
- MySQL: 5.1.54
まずはバックアップをとります。
% tar zcvf foobar-backup.tar.gz /home/htdocs/foobar
% mysqldump -u serendipityuser -p serendipitydb > foobar-backup.db
新しいものを上書きします。
% tar jxvf serendipity-1.5.5.tar.bz2
% cd serendipity
% su
# tar cf - . | ( cd /home/htdocs/foobar; tar xvBpf -)
# chown -R www.www /home/htdocs/foobar
コンテンツに表示する日付のフォーマットを変更します。
--- ./lang/UTF-8/serendipity_lang_ja.inc.php 2006-05-15 17:46:18.000000000 +0900
+++ ./lang/UTF-8/serendipity_lang_ja.inc.php 2006-05-16 14:49:20.000000000 +0900
@@ -7,7 +7,7 @@
@define('LANG_CHARSET', 'UTF-8');
@define('SQL_CHARSET', 'utf8');
@define('DATE_LOCALES', 'ja_JP.UTF-8,ja,jp');
-@define('DATE_FORMAT_ENTRY', '%Y年 %B %e(%A)');
+@define('DATE_FORMAT_ENTRY', '%Y-%m-%d');
@define('DATE_FORMAT_SHORT', '%Y-%m-%d %H:%M');
@define('WYSIWYG_LANG', 'ja-utf8');
@define('NUMBER_FORMAT_DECIMALS', '2');
bbcode pluginを少し変更します。
- code中の改行がそれなりに表示できるように
- code表示時にCODEというタイトルが表示されないように
- code表示時に、幅と高さの最大のサイズを決めてそれ以上の場合はスライドバーを表示
--- serendipity_event_bbcode.php.orig 2007-03-20 18:00:40.000000000 +0900
+++ serendipity_event_bbcode.php 2007-09-27 16:54:12.000000000 +0900
@@ -65,7 +65,9 @@
function bbcode_callback($matches) {
$type = $matches[1];
- $input = trim($matches[2], "\r\n");
+ $input = str_replace("<br />\r\n","
",$matches[2]);
+ $input = trim($input, "\r\n");
+# $input = trim($matches[2], "\r\n");
switch ($type) {
case 'code':
@@ -101,15 +103,16 @@
$input = ob_get_contents();
ob_end_clean();
- $input = str_replace('<br />', "\n", $input);
+# $input = str_replace('<br />', "\n", $input);
break;
default:
return false;
}
- $input = "<div class="bb-$type-title">" . strtoupper($type) . ":</div>"
- . "<div class="bb-$type">$input</div>";
+ $input = str_replace("
","\n",$input);
+
+ $input = "<div class="bb-$type">$input</div>";
return($input);
}
@@ -273,6 +276,9 @@
margin-right: 20px;
color: black;
direction: ltr;
+ max-width: 600px;
+ max-height: 300px;
+ overflow: auto;
}
.bb-code-title, .bb-php-title {
つぎにnginxの設定です。
以下のように設定しています。
/usr/local/nginx/conf/www.example.net.conf
server {
listen 80;
server_name www.example.net;
charset utf-8;
access_log logs/www.example.net/access.log;
error_log logs/www.example.net/error.log notice;
root /home/somewhere/htdocs;
location / {
index index.php;
try_files $uri $uri/ @rewrite;
}
location @rewrite {
rewrite ^/archives([/A-Za-z0-9]+)\.html /index.php?url=/archives/$1.html;
rewrite ^/([0-9]+)[_\-][0-9a-z_\-]*\.html /index.php?url=$1-article.html;
rewrite ^/feeds/(.*) /index.php?url=/feeds/$1;
rewrite ^/unsubscribe/(.*)/([0-9]+) /index.php?url=/unsubscribe/$1/$2;
rewrite ^/approve/(.*)/(.*)/([0-9]+) /index.php?url=approve/$1/$2/$3;
rewrite ^/delete/(.*)/(.*)/([0-9]+) /index.php?url=delete/$1/$2/$3;
rewrite ^/(admin|entries)(/.+)? /index.php?url=admin/;
rewrite ^/archive$ /index.php?url=/archive;
rewrite ^/categories/([0-9]+) /index.php?url=/categories/$1;
rewrite ^/plugin/(.*) /index.php?url=plugin/$1;
rewrite ^/search/(.*) /index.php?url=/search/$1;
rewrite ^/authors/([0-9]+) /index.php?url=/authors/$1;
rewrite ^/(.*\.html?)$ /index.php?url=/$1;
rewrite ^/(serendipity\.css|serendipity_admin\.css)$ /index.php?url=/$1;
rewrite ^/(index|atom|rss|b2rss|b2rdf).(rss|rdf|rss2|xml)$ /rss.php?file=$1&ext=$2;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
location ~ (\.tpl\.php|\.tpl|\.sql|\.inc\.php|\.db)$ {
deny all;
}
error_page 404 /index.php;
}
/usr/local/nginx/conf/nginx.conf
.
.
http {
.
.
include www.example.net.conf;
}
つぎにブラウザでblogトップにアクセスします。データベースをアップしてくださいといわれるので指示にしたがってデータベースをアップデートします。以上で完了です。
トラックバック
このエントリーのトラックバック URI を指定する