お絵描きCGIのBBSNOTEをLinux Mint 17 Qianaで使う方法。

bbsnoteとうとう、種明かしです。

BBSNOTEは、一般的に、Perlの最新版では、データーの書き込みの際に、エラーが出ます。

しかし、私のホームページではBBSNOTEは動いてますよ。

どうしてか? 知りたいですか? (;´∀`)

実は、XAMPP用のPerlを利用しているから、使えるのです。

[ こちらから、XAMPP Linux 1.7.1をダウンロード ]します。

さて、これをLinux Mint 17 Qianaに入れると使えます。どこにインストールするか。

/opt/に展開します。具体的には、

[crayon]

# tar -vzxf  xampp-linux-1.7.1.tar.gz -C /opt/

[/crayon]

とします。そうすると、

/opt/lampp/bin/perl

という所にperlが保存されているので、bbsnote.cgiのトップの所に記載されている部分を、次のようにします。

[crayon]

#! /opt/lampp/bin/perl
[/crayon]
これで、XAMPP用のPerlがBBSNOTEの動作の際に利用されて、動いてくれるわけです。

お試しあれ。と言いつつ、今ではBBSNOTEは配布されているかどうか、配布元の所は閉鎖されているのでしたよね。

今更感たっぷりの情報だったらごめんなさい。

そこで、この方法をelementary OSに適用しようとすると、上手く行きません。

最新版のFreyaのBeta 1版を使って挑戦しましたが、上手く行きませんでした。残念! 無理もないかな。

BBSNOTEはかなり古い感じのCGIだからなぁ。

elementary OSで、CGI(Perl)を、public_html配下で動かす方法。

[crayon]
# which perl

/usr/bin/perl

# ln -s /usr/bin/perl /usr/local/bin/perl

# apt-get install apache2

# a2enmod userdir

# vi /etc/apache2/mods-enabled/userdir.conf

UserDir public_html
UserDir disabled root


AllowOverride All (変更する。)
Options ExecCGI FollowSymLinks (変更する。)

Order allow,deny
Allow from all


Order deny,allow
Deny from all


# vi /etc/apache2/httpd.conf
AddHandler cgi-script .cgi .pl
ServerName localhost
DirectoryIndex index.html index.htm index.cgi

DocumentRoot /home/USERNAME/public_html/html/hogehoge1
ServerName hoge1.gedatsu.jp


DocumentRoot /home/USERNAME/public_html/html/hogehoge2
ServerName hoge2.gedatsu.jp

# /etc/init.d/apache2 restart
[/crayon]
ここで、Web Patioという、掲示板を試験的にインストールします。

http://www.kent-web.com/bbs/patio.html
から、各自ダウンロードしてください。

このCGIは、FFFTPか、WinSCPなどで、サーバー側に解凍した物をASCII形式でUPLOADしないと、後で、CGIをブラウザで閲覧したら、”Internal Server Error”が表示されます。

お気を付け下さい。

※chmod,chownを適切に行なって下さい。(重要です)
パーミッション”755″にしたい場合には、次のように打ちます。
[crayon]# chmod 755 patio.cgi[/crayon]

“patio”フォルダ以下のファイル所有者を”USERNAME”に設定する場合には、次のように打ちます。
[crayon]# chown -R USERNAME. /home/USERNAME/public_html/html/hogehoge1/patio[/crayon]

“init.cgi”を、各々説明に従って、設定して下さい。
そして、自宅サーバーの場合には、Hosts Fileを変更する。
Hosts Fileの置き場所は、Windows 8.1では、下記の通りです。

[crayon]C:\Windows\System32\Drivers\etc\hosts[/crayon]

LinuxのHosts Fileの置き場所は、[crayon]/etc/hosts[/crayon]です。

[crayon]192.168.0.100 hoge1.gedatsu.jp hoge2.gedatsu.jp[/crayon]
さて、ここまで設定したら、ブラウザで、次のように打って、CGIが表示されるか、確かめましょう。
(例1)http://hoge1.gedatsu.jp/patio/patio.cgi
(例2)http://hoge2.gedatsu.jp/patio/patio.cgi

WordPressのfavicon.icoが表示されない場合の対処方法。

WordPressの管理画面を表示し、「外観」→「テーマ編集」→「右メニューの”メインインデックスのテンプレート index.php”を選択」します。

そして、そのファイルの一番下に、次のHTMLを追記します。

<link rel=”shortcut icon” href=”http://hogehoge.jp/favicon.ico” />

そして、ブラウザと、サーバー内のキャッシュを全部削除し、これで準備万端です。

ブラウザを起動し、お目当ての

http://hogehoge.jp/

へアクセスしてみましょう。”favicon.ico”は表示されましたか? 😛

WordPressのPluginでTwitterのウィジェット表示は、”Easy Twitter Feed Widget”がオススメです!

twiter“Easy Twitter Feed Widget”というWordPressのプラグインは、シンプルだし、わざわざ、TwitterのAPIをいじったり登録したり、しなくていいです。

簡単に設定できて、それでいて、縦の長さ、横の長さ、を変更可能だし、テーマを、LightとDarkの二通りから選べます。

たまにWordPressのテーマによっては、画面がずれると言う事もありますが、大体のテーマは大丈夫だと思います。

C言語 switch case文。偶数か、奇数か?

[crayon]/*
============================================================================
Name : ensyuu3-11.c
Author :
Version :
Copyright : Your copyright notice
Description : Hello World in C, Ansi-style
============================================================================
*/

#include

int main (void)
{
int no;

printf(“整数を入力して下さい。”);
fflush(0);
scanf(“%d”, &no);

switch(no % 2) {
case 0 : puts(“その数は偶数です。”); break;
case 1 : puts(“その数は奇数です。”); break;
default : puts(“その数は対象外です。”);
}
return(0);
}
[/crayon]
参照:http://nekohand.web.fc2.com/meikai/neko_meikai_c_ans.html

C言語 三つの値は等しいか、三つとも異なるか、二つ同じか。

[crayon]/*
============================================================================
Name : ensyuu3-9.c
Author :
Version :
Copyright : Your copyright notice
Description : Hello World in C, Ansi-style
============================================================================
*/

#include

int main(void)
{
int num1, num2, num3;

puts(“三つの整数を入力して下さい。”);

printf(“整数1:”); fflush(0); scanf(“%d”, &num1);
printf(“整数2:”); fflush(0); scanf(“%d”, &num2);
printf(“整数3:”); fflush(0); scanf(“%d”, &num3);

if( num1 == num2 && num2 == num3) {
puts(“三つの値は等しいです。”);
}
else if(num1 != num2 && num2 != num3 && num3 != num1) {
puts(“三つの値は異なります。”);
}
else {
puts(“二つの値が等しいです。”);
}

return(0);
}
[/crayon]
参照:http://nekohand.web.fc2.com/meikai/neko_meikai_c_ans.html

C言語 最大値を求める(2)

[crayon]
/*
============================================================================
Name : ensyuu3-8.c
Author :
Version :
Copyright : Your copyright notice
Description : Hello World in C, Ansi-style
============================================================================
*/

#include

int main(void)
{
int num1, num2, num3, max;

puts(“三つの整数を入力して下さい。”);
printf(“整数1:”); fflush(0); scanf(“%d”, &num1);
printf(“整数2:”); fflush(0); scanf(“%d”, &num2);
printf(“整数3:”); fflush(0); scanf(“%d”, &num3);

max = (num1 > num2) ? num1 : num2;
max = (max < num3) ? num3 : max; printf("最大値は%dです。\n", max); return(0); } [/crayon] 参照:http://nekohand.web.fc2.com/meikai/neko_meikai_c_ans.html

C言語 最大値を求める。

[crayon]
/*
============================================================================
Name : ensyuu3-6.c
Author :
Version :
Copyright : Your copyright notice
Description : Hello World in C, Ansi-style
============================================================================
*/

#include

int main (void)
{
int num1, num2, num3, num4, max;

puts(“四つの整数を入力して下さい。\n”);
printf(“整数1:”); fflush(0); scanf(“%d”, &num1);
printf(“整数2:”); fflush(0); scanf(“%d”, &num2);
printf(“整数3:”); fflush(0); scanf(“%d”, &num3);
printf(“整数4:”); fflush(0); scanf(“%d”, &num4);

max = num1;
if(num2 > max) max = num2;
if(num3 > max) max = num3;
if(num4 > max) max = num4;
printf(“最大値は%dです。”, max);

return(0);
}
[/crayon]
参照:http://nekohand.web.fc2.com/meikai/neko_meikai_c_ans.html

C言語 絶対値を求める。

[crayon]
/*
============================================================================
Name : ensyuu3-3.c
Author :
Version :
Copyright : Your copyright notice
Description : Hello World in C, Ansi-style
============================================================================
*/

#include

int main (void)
{
int num;
printf(“整数を入力してください:”);
fflush(0);
scanf(“%d”, &num);

if(num < 0) { num = -num; } printf("絶対値は%dです。", num); return(0); } [/crayon] 参照:http://nekohand.web.fc2.com/meikai/neko_meikai_c_ans.html

C言語 演習3-2

[crayon]
/*
============================================================================
Name : ensyuu3-2.c
Author :
Version :
Copyright : Your copyright notice
Description : Hello World in C, Ansi-style
============================================================================
*/

#include

int main(void)
{
printf(“%d\n”, 10 == 10);
printf(“%d\n”, 10 == 9);
printf(“%d\n”, 10 != 10);
printf(“%d\n”, 10 != 9);
printf(“%d\n”, 10 > 9);
printf(“%d\n”, 10 < 9); return(0); } [/crayon] 参照:http://nekohand.web.fc2.com/meikai/neko_meikai_c_ans.html

C言語【if else 文、約数か約数でないか。】

[crayon]
/*
============================================================================
Name : ensyuu3-1.c
Author :
Version :
Copyright : Your copyright notice
Description : Hello World in C, Ansi-style
============================================================================
●約数・倍数の知識
約数
 約数…ある整数を割り切れることができる整数。
  18の約数…1、2、3、6、9、18

 素数…約数が1とその数しかない整数
  2、3、5、7、11、13、17、…
公約数と最大公約数
 公約数…2つ以上の整数に共通な約数。
  12の約数…1、2、3、4、6、12
  18の約数…1、2、3、6、9、18
  12と18の公約数は1、2、3、6

 最大公約数…公約数の中で最大な整数。
  12と18の最大公約数は6。(右の求め方)

 ※公約数は最大公約数の約数になる。
倍数
 倍数…ある整数を整数倍した整数。
  3の倍数…3、6、9、12、…
公倍数と最小公倍数
 公倍数…2つ以上の整数に共通な倍数。
  3の倍数…3、6、9、12、…
  4の倍数…4、8、12、16、…
  3と4の公倍数は12、24、36、…

 最小公倍数…公倍数の中で最小の整数。
  12と18の最小公倍数は36。(右の求め方)
  12と15と18の最小公倍数は120。(右の求め方)

 ※公倍数は最小公倍数の倍数になる。
*/

#include

int main (void)
{
int num1, num2;

puts(“二つの整数を入力して下さい。”);
printf(“整数A:”); scanf(“%d”, &num1);
printf(“整数B:”); scanf(“%d”, &num2);

if(num1 % num2) {
puts(“BはAの約数ではありません。”);
}
else {
puts(“BはAの約数です。”);
}

return(0);
}
[/crayon]
参照:http://www.hello-school.net/sansub3001.html
参照:http://nekohand.web.fc2.com/meikai/neko_meikai_c_ans.html

Windows 8.1で、Puttyの秘密鍵を、複数自動起動する方法。

secretPuttyの秘密鍵を、複数持っている場合、秘密鍵を、Windowsのスタートアップに保存してみることは、皆さんやってきたのではないでしょうか?

しかし、実際にやってみると解りますが、秘密鍵が自動的に全部読み込まれません。そんな時にどうするか?

グーグル先生に聞いてみると、参考サイトに、いいことが書いてありました。手順は、下記の通りです。

  1. 秘密鍵を一箇所に集める。
  2. Puttyのインストールしたフォルダにある、”pageant.exe”へのリンクファイルをひとつ作成する。
  3. 2.で作った”pageant.exe”へのリンクファイルの、「作業フォルダ」を、1.でまとめた、一箇所に集めた秘密鍵のフォルダに指定する。
  4. 2.で作った”pageant.exe”へのリンクファイルの、「リンク先」には、秘密鍵を列挙する。
  5. 以上で作った”pageant.exe”へのリンクファイルをWindowsの「スタートアップ」に保存する。

上記4.のリンク先は、下記のように指定します。

“C:\Program Files (x86)\PuTTY\pageant.exe” key1.ppk github.ppk aws.ppk “日本語ファイル名秘密鍵.ppk” “C:\User\USERNAME\.vagrant.d\insecure_private_key.ppk”

Windows8.1のスタートアップは隠れております。どうして隠す必要があるのか、この辺は都合上なのでしょうか。私には解りません。

どこに、スタートアップがあるかは、下記に隠れておりますよ。

C:\Users\USERNAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

AppData以下は隠しフォルダなので、見えない人は、見えるようにしましょうね。

そこまではWindowsに親切ではないので教えません。 😉

このスタートアップに、先ほど作った、”pageant.exe”へのリンクファイルを保存すればいいのです。これで万事おk。

 


startup※スタートアップフォルダは次のようにしても開きます。(Windows 7,Windows 8.1で動作確認しました。)

Windowsキー+rキーを押しまして、コマンドは、

「shell:startup」とします。

するとスタートアップ画面が開きますよ! お試しあれ!

 

参考:http://mistymagich.wordpress.com/2013/10/18/how-to-automatically-start-pageant-with-loading-private-key-files/

参考:http://blog.livedoor.jp/haruka_sao/archives/52019677.html

1 2 3