Help us understand the problem. What is going on with this article?

TermuxでFsWikiを動かす

More than 1 year has passed since last update.

Androidスマホ上で動くTermux。apache やperl も動かすことができます。
私は、自分自身の備忘録を兼ねて、自宅WEBサーバ上のFsWiki上にいろいろと
書き込んでいたのですが、ネットがつながらないところでも見たい。
でもそのために普段からノートPCを持ち歩くのも辛い ...

と思っていたのですが、Termux があれば、スマホの上に、FsWikiを構築できます。

そのための手順を紹介します。

環境構築

Termux をプレイストアから入手。これがないと始まりません。

まずは、Perl CGIを動くようにする

apache,perl の入手

Termuxをインストールし、起動したら apache,perl を入手します。

apt update
apt upgrade
apt install apache2
apt install perl

httpd.conf 修正

ファイル: /data/data/com.termux/files/usr/etc/apache2/httpd.conf
以下のエントリに、以下を追加 Optins +ExecCGI を追加

<Directory /data/data/com.termux/files/usr/lib/cgi-bin>
</Directory>

以下のAddHandler ... のコメントを外す

AddHanderl cgi-script .cgi

mod_cgiモジュールを読み込むため、以下のように変更し、強制的 mod_cgi.soを読ませる

<IfModule mpm_prefork_module>
     #LoadModule cgi_module libexec/apache2/mod_cgi.so
</IfModule>

   ↓

  #<IfModule mpm_prefork_module>
      LoadModule cgi_module libexec/apache2/mod_cgi.so
  #</IfModule>

ここまでで、apace でperl CGIが動く状態になっています。
サンプルの printenv が動くように実行権限の付与と修正を行います。

chmod ugo+x /data/data/com.termux/files/usr/lib/cgi-bin/printenv

また、エディタを使って、printenv の先頭行に以下を追加します。

#!/usr/bin/perl

ここまできたら、apace を起動し

apachectl

スマホのWEBブラウザでいかにアクセスしてみましょう。
http://127.0.0.1:8080/cgi-bin/printenv
(127.0.0.1ではなく、localhost でもアクセスできますが、Yahooブラウザ等だとダメでした)

FsWikiを動かす

モジュールの入手

apt install make
apt install clang
apt install wget
apt install openssh

(wegt は、FsWikiを取得するため。標準で入っている wget は httpsに対応していないため)

cpan からCGIを取得

cpan

上記で、cpan を一度動かし、一通り設定(問い合わせは全て デフォルトでOK)が終了したら、"q"で終了。
再度cpanを起動

cpan
cpan>install CGI

FsWikiを取得し、htdocs 配下に展開

cd /data/data/com.termux/files/usr/share/apache2/default-site/htdocs/
/data/data/com.termux/files/usr/bin/wget https://ja.osdn.net/projects/fswiki/downloads/69263/wiki3_6_5.zip
unzip wiki3_6_5.zip
mkdir /data/data/com.termux/files/usr/share/apache2/default-site/htdocs/wiki3_6_5/log
mkdir /data/data/com.termux/files/usr/share/apache2/default-site/htdocs/wiki3_6_5/backup

httpd.conf に以下の定義を追加

<Directory /data/data/com.termux/files/usr/share/apache2/default-site/htdocs/wiki3_6_5>
  Options +ExecCGI
</Directory>

その後、apache 再起動し、以下にアクセスしてwikiが表示されればOK。

http://127.0.0.1:8080/wiki3_6_5/wiki.cgi

小さなスマホの中で、apache や perl CGI が動いていると思うと、ちょっと感動です。

hidemiubiz
高齢エンジニアです。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away