Category Archives: Fedoracore6

今日も相方のRY氏がいつもどおりにギャーギャー騒いでいた。

あれ~~~、ローカルだとうまくいくのにサーバにあげたらうまくいかない~~~!!

っと一人で騒いでいる。

なんかJquery,jsでボタンの制御をやったらしいのだが、ローカルとサーバ側で挙動が違っているらしい。

いつもどおりにしょうがなく原因を調べることになってしましました。

まぁ書き方もいいし、特に問題がないような感じだけどなぜか、サーバ側だと動かない。

過去の経験上、こういうのは大抵しょうもない1行ぐらいのミスでうまくいかない事が多いけど今回はどうも違うっぽい。

さんざんいろんなファイルを見てみた結果やっとこさ原因がわかった。

原因は、htmlのhead部分で複数のjavascriptを読み込んでいる、そこで一番最後の行に「Base.js」というのを読み込んでいて、

そのファイルの中で「$()」というメソッドを宣言していてjquery.jsのとメソッドが重複していて上書きしていたために、うまくいっていなかった。

しかも最悪だったのが、サーバ側とローカル側で読み込んでいるjavascriptの数がちがっていてこの「Base,js」というファイルは、

サーバ側でしか読み込んでおらず、ローカルでは読み込んでいなかったので、ローカル上ではうまくいってしまったのだ。

人のことは言えないけど他人が書いたプログラムなりhtmlは大抵解読が難しく、ごみとかもよくあるのでこういう事が起こってしまう。

今回の「Base.js」というファイルはRY氏の会社のモンゴル人の人が置いたらしく、そのお蔭で正常に動作しなかったわけだ。

ニャロ~~~~~!!!

一件落着しました!!

**********************************************

RY氏が昔からよく解けないエラーや問題を自分に投げかけてくるのだが、おかげでストレスが溜まりぐちぐち文句を言いながらやっているけれどもしかしたらいい経験になっているのかもしれない・・・・

Perlのsystem関数でシェルスクリプトを実行しようとしたら

sudo: sorry, you must have a tty to run sudo

というエラーになった。シェルスクリプトの中にchownをやりたくてsudoコマンドを書いていたんだけど、恐らくその箇所で失敗しているみたい。

調べてみたらsudoの設定ファイルを変更すればよいと書かれてあった。

1・「visudo」で設定ファイルを開く

2・設定ファイルの56行目あたりの

Defaults    requiretty

をコメントアウトにする。

3・失敗したシェルスクリプトを実行する

4・おそらく成功する

でうまくいくと思います。

前にApacheでWebサーバを作って公開するときにかなり苦戦したな~~~ ozz

とまぁその時のメモです。

その苦戦した理由というのが家のモデムが「yahoobb」の 「Yahoo! BBトリオモデム3-Gplus」とかって言うのが原因でした。

まず、家の回線のおおまかな流れとしては、

モデム「yahoobb」

ルータ「バッファロー」

各パソコンたち

となっています。
その中でwebサーバを公開する場合ルータのポートの80番を開けなくてはいけないのでブラウザから自分のルータの設定画面に入って

ネットワーク設定 → アドレス変換

をして80番ポートを開けました。(サーバのファイヤーウォールのapaechの設定も許可にしておく)

しかし、それだけではポート確認サイトで確認した場合接続ができませんでした。

それで数か月過ぎましたがついに原因がわかりました。

それは、モデムが原因でした。

その理由というのが、yahoobbのモデムの場合モデム自体にもファイヤーウォールの機能があってモデムの方も80番ポートを開けなくてはいけなかったのが原因でした。

やり方としては、

まず、 Yahoo! BBトリオモデム3-Gplusの設定画面に入ります。

※IDとかパスワードは最初の場合両方とも「user」です

次に「ポート転送」をクリックして

WAN側ポート番号、転送先ポート番号を入力します。

↑確か番号はルータのデフォルトゲートウェイだったっと思います。間違っていたらゴメンチョ(^_^)

そして転送先IP アドレスにサーバのローカルipを入力して

追加ボタン → OKボタン → 左メニューの設定保存 → 左メニューの再起動

をおして完了です。

ポート確認サイト

で確認したらちゃんと接続が確認されました。

とまぁ、ダラダラと長くなってしまったがこれで完了だしょ!!!!

イヤ~~~苦労したなぁ~~~~

とこのblogを書いていて思い出しました (泣)

最後にyahoobbのモデムの場合このようにWebサーバを公開するだけでも面倒ですが

しかし、

yahoobbモデムはグローバルIPアドレスが前に使用していたグローバルIPを優先的に使用するようなので、

滅多なことがない限りグローバルIPは変更になんないそうです。(モデムの電源を3か月ぐらい切っておけば変わるらしいです)

つまり固定的なグローバルIPということです。

ドゥこれ、すごくないっスカッ!!!!!!!

つまりdicp(スペル忘れた)などを使用する必要が無いということだべ。

めでたしめでたし★

追伸

本格的にサーバを使用す場合はグローバルIPを買って固定式にした方が良いと思います。