Mediawiki に Extension:Scribunto を追加する。
下の方に、
We have developed a PHP extension written in C called LuaSandbox. It can be used as an alternative to the standalone binary, and will provide improved performance. See LuaSandbox for details and installation instructions.
とあるので、LuaSandbox をインストールしてみる。
これがなかなかエラーが出て止まらない。
php5 関連を全部削除してphp7をインストールしてみたり、は必要ない作業だったのかも。
# yum list installed | grep php
kusanagi-php7.noarch 7.2.12-1 installed
php-cli.x86_64 7.2.12-1.el7.remi @remi-php72
php-common.x86_64 7.2.12-1.el7.remi @remi-php72
php-devel.x86_64 7.2.12-1.el7.remi @remi-php72
php-fpm.x86_64 7.2.12-1.el7.remi @remi-php72
php-gd.x86_64 7.2.12-1.el7.remi @remi-php72
php-json.x86_64 7.2.12-1.el7.remi @remi-php72
php-mbstring.x86_64 7.2.12-1.el7.remi @remi-php72
php-mysqlnd.x86_64 7.2.12-1.el7.remi @remi-php72
php-pdo.x86_64 7.2.12-1.el7.remi @remi-php72
php-pecl-mcrypt.x86_64 1.0.1-6.el7.remi.7.2 @remi-php72
php-pecl-mysql.x86_64 1.0.0-0.17.20160812git230a828.el7.remi.7.2 @remi-php72
php-xml.x86_64 7.2.12-1.el7.remi @remi-php72
php-xmlrpc.x86_64 7.2.12-1.el7.remi @remi-php72
Kusanagi-PHP7 に拡張モジュールを追加する方法
Kusanagi のPHP7では拡張モジュールを追加するのに、次のようにするといい。
wget https://pecl.php.net/get/LuaSandbox tar xfvz LuaSandbox cd LuaSandbox-3.0.3 /usr/local/php7/bin/phpize ./configure --with-php-config=/usr/local/php7/bin/php-config make make install l /usr/local/php7/lib/php/extensions/no-debug-non-zts-20170718/
echo 'extension = luasandbox.so' > /etc/php7.d/extensions/luasandbox.ini php7 -m | grep -i luasandbox php -m | grep -i luasandbox # php をphp7 のリンクにする cd /bin mv php php7.new ln -s /usr/local/php7/bin/php php
これで LuaSandbox 拡張モジュールがPHP7に追加された。
LocalSettings.php に次を追加。
wfLoadExtension( 'Scribunto' ); $wgScribuntoDefaultEngine = 'luasandbox'; $wgScribuntoUseGeSHi = true; $wgScribuntoUseCodeEditor = true;