Perlを使えるように

動的コンテンツPerlを使えるようにする。
カテゴリ:
Webmin System Servers NetWorking Hardware Culuster Others

サーバ – サーバ – グローバル設定
設定ファイルの編集
apache2.conf

前回ドキュメントを変更した位置を修正

<Directory /home/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>>

下記のように変更しました。

<Directory /home/www/>
AllowOverride All
Options Includes ExecCGI FollowSymLinks
Require all granted
</Directory>>

下記のように変更 perl.ssiを許可しました。

userdir.conf

<Directory /home/*/public_html>
AllowOverride FileInfo AuthConfig Limit Indexes
Options Multiviews Indexes SymLinksOwnerMatch IncludesNoExec
Require all granted
<Limit GET POST OPTIONS>
Require all granted
</Limit>
<LimitExcept GET POST OPTIONS>
Require all denied
</LimitExcept>
</Directory>

下記のように変更perl.ssiを許可しました。

<Directory /home/*/public_html>
AllowOverride All
Options Includes ExecCGI FollowSymLinks
Require all granted

</Directory>

保存

mime.conf
結構下の段にあります。
CGI Script Aliased…
#を外して.plを加えます。
#addHandler cgi-script .cgi
addHandler cgi-script .cgi .pl

最下段ssiの拡張子.shtml
もしheml内にssiを置く場合 .shtml .html を追加
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
ここは弄らない。
できるということで…

保存

Configure Apache Modules
前回設定済です。
必要なモジュールもEnabledにします。

■.include
■.cgi
■.cgid

dir.conf
ここに指定した。ファイルはディレクトリのみでアクセスできる。
<IfModule mod_dir.c>
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.shtml index.htm </IfModule>
index.shtmlを追加した。

保存

negotiation.conf
jaを一番先頭に
LanguagePriority ja en ca cs da de el eo es et fr he hr it ko ltz nl nn no pl pt pt-BR ru sv tr zh-CN zh-TW

保存

security.conf
エラーなど出た時サーバ情報を教えないようにします。
ServerTokens OS
ServerTokens Prod

Prodにします。

ServerSignature On
ServerSignature Off

Offにします。

保存

以上設定が完了したら
Apacheを

Apacheを停止
Apacheを起動

端末(ターミナル)操作をします。
端末を開き下記情報を入力します。
Mint登録時の管理権限を持ったユーザから
[…]内、一列で
[ $ sudo ln -s /usr/bin/perl /usr/local/bin/perl ]

/usr/local/bin/perlでも/usr/bin/perlのどちらでも使えるようにリンク付ける

サンプル:動作テスト用 test.cgi パーミッション 755にする。
ドキュメントルート:~linux$ sudo chmod 755 /home/www/html/test.cgi
一般ローカル:~linux$ chmod 755 /home/www/html/test.cgi

#!/usr/local/bin/perl

print “Content-type: text/html\n\n”;
print “<html>\n\n”;
print “<title>CGIテスト</title>\n”;
print “<div style=\”width: 100%; font-size: 40px; font-weight: bold; text-align: center; margin-top:200px;\”>\n”;
print “CGI:/home/showb/public_html Test Page”;
print “\n</div>\n”;
print “</body>\n</html>\n”;

サンプル:動作テスト用 test.shtml
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″>
<title>SSIテスト</title>
</head>
<body style=”background:#ccc;”>
<div style=”width: 100%; font-size: 40px; font-weight: bold; text-align: center; margin-top:200px;”>
SSI:Test Page<br />
<!–#config timefmt=”%Y/%m/%d %H:%M:%S” –>
<!–#echo var=”DATE_LOCAL” –>
</div>
</body>
</html>

※ 一応ここまででローカルで使用するサーバ構築は終了です。
これで、PHP.Perl.ssiを使うことができます。
CMSをインストールしてテスト・カスタマイズ等もできます。
LinuxMintはデスクトップパソコンとしても豊富なアプリケーションの他にサーバ構築をしたりいろんな事ができてとても楽しいですね。

もうWxxdxwsがなくっても平気ですよね[LinuxMintユーザを増やそう!!]
このページはスマートフォン向けにとして作成してます。
暇な時、「Webminを使ってこんなふうにやればサーバ構築ができるんだ」お家へ帰ってスマホ片手に実際パソコンでやってみてください。
また、レイアウトはスマホ用として作成しましたがパソコンからアクセスすることもできます。
http://www.showb.com/smp/serverindex.htm
WebサーバApacheはこれで終わりですけどWebminについてはまだまだ続きます。

Perlライブラリ

ここ数年PHPばかりでPerlを全然弄ってなく久しぶりにPerlを使用してみました。
今回Perlの文字コードをUTF-8で使用、
Kent-WebさんのsunbbsをUTF-8で動作させてみました。
このスクリプトはshift-jisで動作させていますがすべてエデイタでUTF-8に置き換え、スクリプトの一部を書き換えて実行させてみました。

Perlライブラリは同封されていましたが今後の事を考え、
Ubuntuソフトウエアセンターより
libjcode-pm-perl
Jcodeモジュールは、日本語文字コード変換、UTF-8 で文字列を利用したいため

libcrypt-rc4-perl
Crypt::RC4モジュールは、PerlでRC4暗号アルゴリズムを利用するためのもの

当サーバへ2点組み込みました。

sunbbsは今のところ問題なくUTF-8で動作していますが不具合等は少し動かしてみて見ないとなんとも言えませんが今のところ大丈夫です。


SUN BOARD UTF-8