nginx でmodx のFriendly URL をrewrite

まだ十分理解できているわけではないので、最適解かといわれると疑問がのこるが、とりあえずは動いているということで、 server { server_name cubie2.example.com; access_log /srv/www/site1/logs/access.log; error_log /srv/www/site1/logs/error.log; root /srv/www/site1/public; location / { index index.php index.html index.htm; try_files $uri $uri/ /index.php?$args @modx; } location @modx { rewrite ^/(.*)$ /index.php?q=$1&$args; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } . . . } リライトには3回パスをとおしている、ということかな?

IIS のurls rewrite を使ってmodxのfriendly url を有効にする。

たとえIISサーバーを使っていてもHelicon Ape というツールをIISに組み込めば、modxについてくる.htaccess をそのまま使っのfriendly url を活用することはできているわけだが、今回はIISのURL rewrite module (IIS 7 の場合は別途ダウンロードで組み込む)を使って同じことをやってみた。

ModX cloud

Modx cloud というのをMODXのサイトで盛んに宣伝していたのは知っていたのだが、前回フォーラムにアクセスした際、「タダでアカウントをゲット」みたいなティッカーが表示され、それなら登録だけでも、とMODXCloud.comに登録してみれば、 Dev Siteを一本無料2本無料で使えることが分かったので、早速sandbox サイトを作ってみた。 これは便利だ。サーバーの構築を気にせず、簡単にサイトをリセットしたり、バージョンアップができるようだ。 スニペットやプラグイン、新しいアイデアを試してみたいときに気軽にアクセスしてイロイロ無茶やれそうな場所ができた。 MODXというのはコアを開発している人が基本的に二人なので、開発が細い。 その分、コニュニティで協力してやらなければならないのだろうが、MODXCLOUDのプロバージョンは他のプロバイダーよりも高めの料金設定なので、Financial なサポートをするのも 覚悟がいる。 バージョンアップの節目節目にdonationをするのが今の自分にできることだ。

modx Snippet を改良したときのメンテ法

昔に作ったmySnippet というスニペットがあるとする。 そしてそれを既にサイトのい何か所にも使っているような場合。 改良バージョンでmySnippet2というコードを作って、置き換えようとしたときに、全てのリソースのレファレンスを書き換える手間を省くために、mySnippetを以下の2行に書き換えて、mySnippetを呼んだときには実はmySnippet2を実行するようにしてしまう。