06/12/13 00:16:44 r2X/8+Vz
初めて質問させていただきます。
言葉の使い方が間違っていたらすみません。板違いなら誘導お願いします。
Perl5.8.8でCGIを作っています。サーバはIIS5.1です。
ブラウザ上からCGIを動かした場合に、ファイル書き込みができなくて困っています。
【やりたいこと】
cgi-binディレクトリの中に存在しているテキストファイル(仮にwritetest.dat)に、
同じディレクトリ内にあるwritetest.cgiというファイルを用いて文字列を書き込みたい
【セキュリティの設定】
cgi-binディレクトリ全体を、書き込み可能にしてあります。
【自分で行ったこと】
writetest.datに、”Hello"と書き込むだけの簡単なwritetest.cgiを作成。
コマンドプロンプトからwritetest.cgiを実行したところ、問題なくwritetest.datにHelloが書き込まれました。
しかし、ブラウザからwritetest.cgiを実行したところ、ファイルがOpenできなく、CGI Errorとなりました。
こういう現象の場合、どうしたらよいのでしょうか。
この設定だと、ログファイルなども全くファイルに書き込むことができず、困っています。
単純な質問で申し訳ありませんが、よろしくお願いいたします。
820:nobodyさん
06/12/13 00:20:43
そのwritetest.datに対して、IISのサービスユーザーが書き込み権限を持っていないだけだと思われ
821:nobodyさん
06/12/13 00:22:32 98NioA49
>>819
とりあえずソースみせて
822:819
06/12/13 00:38:02 r2X/8+Vz
早速のご返答ありがとうございます。
>>820
サービスユーザーの書き込み権限、はどこで設定できるのでしょうか。
現在、ローカルに対してはAdmin権限を持っている自分のアカウントでIISの設定を行い、かつ
自分のIDのアカウントでlocalhostに対してアクセスしています。
私が概念自体理解していなそうでしたら、ご指摘ください。
>>821
writetest.datの初期状態は空。
writetest.cgiのソースは、以下の通りです。
#!c:\perl\bin\perl
require "./jcode.pl";
require "./cgi-lib.pl";
$write_file = "./writetest.dat";
$string = "Hello\n";
open(OUT,">>$write_file") || &error("Write Error : $write_file");
print OUT $string;
close(OUT);
sub error{
print "File write Error";
}
823:nobodyさん
06/12/13 01:31:20
>>822
根本的に勘違いしてるなー
IISに限らず、何らかのプロセスがファイルを触るときは、そのプロセスの実行ユーザーが
ファイルに対してアクセス権限を持ってなきゃいけない
で、ファイルを右クリックするとプロパティで「セキュリティ」タブがあるからそこでアクセス権限を
追加するんだけど、IISの実行ユーザーはIISによって違うから何とも言えんていうか忘れた
IUSR_なんたらとかいった感じだった筈
824:819
06/12/13 02:36:12 r2X/8+Vz
>>820,821,823
IISの匿名アクセスの設定をいじったら、解決しました!
その設定は私にとって盲点でしたので、本当に参考になりました。
ありがとうございました。
825:nobodyさん
06/12/13 12:23:07 kiWypRhv
Perlで書いたスクリプトをPHPで書き直そうとしてます。
その時ログはそのままで、同じの使いたのですが、
crypt関数で暗号化した文字列(と種)がそのログにあります。
そこでPHPとPerlのcrypt関数は同じように動くかどうか知りたいのですが、
どなたかご存知ないですか?
826:nobodyさん
06/12/13 12:41:31
じぶんでやってみればわかることを訊かれても
827:nobodyさん
06/12/13 12:43:43
cryptしてみればいいじゃん
828:825
06/12/13 13:26:24
>>826-827
PHPの環境を作っていなかったもので、すみません(汗
いまPHPインスコして試したところ、
PerlでもPHPでもかわらない結果が出ました。
ではノシ
829:nobodyさん
06/12/13 19:47:00 k9EC/h3j
Perlの中で
@file = `/usr/local/bin/wget -q -O - URLリンク(xxxx.com)
というように、wgetで自分の他サーバに置いてあるログファイルを読んでいます。
普段は問題ないのですが、他サーバは時々不安定なのでタイムアウトの時間を設定したいのと、
私のミスでたまにそのログファイルが404になってしまう時、404のエラーページがページの途中に
ズドンと表示されてしまうので、404だったら@fileに何も入れない(?)というようにしたいのですが
どう書けばよろしいのでしょうか?
すいませんが、よろしくお願い致します。
830:nobodyさん
06/12/13 23:46:19
>829
つ [LWP]
サンプルはあちこちに転がってると思うので探すよろし
831:nobodyさん
06/12/14 08:38:14
例えばメーリングリストの入会・変更確認や、パスワードの変更画面で
URLが、hoge.com/auth/wsedrftggsiojd348729/へアクセスさせる事が
あると思うのですが、この暗号(wsedrftggsiojd348729)部分は、どのような
仕組みになっているのでしょうか。
1.暗号化復号化の方法(主なものにどんな手法があるのでしょうか)
2.URLにして、アクセスを可能にする方法
を教えていただきたく、よろしくお願いします。
832:nobodyさん
06/12/14 08:55:06
>>831
1はわかりようも無いが2はサーバーの環境変数から引っ張ってくればいい
833:831
06/12/14 09:03:20
>>832
早速ありがとうございます。
環境変数から引っ張るとはどういうことでしょうか。
重ねてすみませんが教えてください。
例えを追加しますと、認証に限定しなくても
宅ファイル便のように、その(暗号化)アドレスにアクセスすると
該当ファイルのダウンロード画面が表示されるということの
仕組みが知りたいです。
よろしくお願いいたします。
834:nobodyさん
06/12/14 13:46:44
FORMで回答をDBに保存する際の質問です.
・選択肢1
・選択肢2
・選択肢3
といった選択肢に対して,回答が単一選択(radio)の場合は
その選択肢の番号(例えば選択肢2なら、ans=2、など)としています.
ここで質問なのですが,複数選択(checkbox)の場合はどのように保存するのが良いでしょうか?
例えば選択肢1と選択肢2ならans=12やans=110(ビット列にしてる)とかかなーと思ったのですが,
どっちも確認画面が作りづらいなぁ・・・と思いまして.
835:nobodyさん
06/12/14 14:56:57
>>834
検索することがあるなら、別々にしといたほうがラクじゃない?
いちいちANDとると重くなりそうじゃん。
検索することが少ないならビットでいいよ。
836:nobodyさん
06/12/14 16:20:38
>>835
ありがとうございます.
選択肢や設問タイプ(textarea,checkbox,radio,etc・・・)自体が場合によって違う(DBから読み出して生成してる)ため,
checkboxのためだけにあらかじめ複数のフィールドを用意するのも無駄が多いかな,と.
ビット列にしてみます.
837:834
06/12/14 16:21:14
834=836
です・・・
838:nobodyさん
06/12/14 16:37:17
スレ違いかつ返答がなかったのでコピペします。
ユーザー認証について質問です。
こちらが適当にIDとパスワードを設定して、ユーザー側に連絡します。
ここまでは手動でいいんですが、
ユーザー独自のホームページを作り、ユーザー認証してもらって、そのユーザー独自のページをみる
っていう方法はPHPさえ勉強すればできますか?ASPとかいらないですか?
よろしくお願いします。
ちなみにプログラミング経験なくいまから勉強するんで、言語の選択すらできていないんです。
とりあえずPHPの本は数冊買ってきました。
よろしくお願いします。
839:nobodyさん
06/12/14 16:46:20
ユーザ独自のホームページというのがどんなものかによる
Gooの簡単ホームページみたいなのならそれだけでできるが
ホスティングみたいにディスクスペース割り当ててFTPとかでHP更新させるとか
になるとそれだけじゃ無理
840:nobodyさん
06/12/14 17:02:05
>>839
ホスティングですかね?
いま考えているのは、二つやりたいのですが
一つは、よくあるようにこちらが用意した項目・リストから
会員が独自にブラウザ上からお気に入りのリストをつくるかんじです。
ログインしたらいつも確認・更新とかできるようにしたいです。
もうひとつは、ブラウザ上から会員各自に割り当てられたページを自由に
記述、画像アップロードができるようにしたいです。
どうしたらいいですか?もしかして大規模な開発とか必要ですか?(初心者ですいません)
841:829
06/12/14 19:00:18
>>830
亀レスですいません。
なるほど、LWP。
ってLWPの使い方がよくわからないので、wgetにたどり着いたんだったorz
もうちょい勉強してきます。
842:nobodyさん
06/12/16 13:31:52
HTML画面のテーブルをソートする例はよく見るんですけど、
テーブルの各行に↑や↓ボタンがついていて、1行ずつ並び替えを
行うのはどうやってやるんですか?
いい例はないですか。JavaScriptかな。
843:nobodyさん
06/12/16 14:39:31
javascriptだな
844:nobodyさん
06/12/18 23:01:40 D63+ET/K
>>842
DOM HTMLおすすめ。
845:nobodyさん
06/12/19 01:41:06
perlでCGIゲームを作っているのですが
infoやローカルでは滞りなく更新できるのに
abcorotii鯖ではスクリプトエラーが出ます
もちろん用いたスクリプトは同じものです
何故だか分かる方いらっしゃいますか
846:nobodyさん
06/12/19 01:55:42
まず「abcorotii鯖ってなんだ?」って所からエスパーの領域なわけだが、
一行目のperlのパスが違うかパーミッション間違いだろうと予測してみる。
ていうかエラーメッセージくらい書けヴォケ
847:nobodyさん
06/12/19 03:36:56
>>846
スマソ。エラーメッセージは
Error message: Premature end of script headers: master.cgi
perlパスやパーミッションは全部合ってる
xreaからサーバー移転した途端バグるようになったんだ
848:nobodyさん
06/12/19 03:39:44
>>847
まさかとは思うけれど実行に一秒以上かかって殺されてるって事は?
849:nobodyさん
06/12/19 03:56:07
改行コードとかってオチじゃあるまいな
850:nobodyさん
06/12/19 06:37:24
URLリンク(www.google.co.jp)
851:nobodyさん
06/12/19 17:59:48 s32a4+w/
ABCオロチか。レン鯖じゃん。そこで聞け。
852:nobodyさん
06/12/21 18:20:01 S6BU52+m
WEBページ上でパックマンとかインベーダーゲームなどが動くのが
ありますが、ああいうのは、何を使って作るんでしょうか?
ヒントを教えてください。
853:nobodyさん
06/12/21 18:26:43
Java。
854:nobodyさん
06/12/21 18:27:02
Javaかマクロメディアで検索しる
855:nobodyさん
06/12/21 20:41:04
>854
マクロメディアはアドビに買収されたぞ
Flashでぐぐってみるのもいいんじゃね
856:nobodyさん
06/12/22 14:04:29 SFuimMhe
>853,854,855
ありがとございました。
Windows Platform - Java EE SDK 5 Update 2
というのをダウンロードしてインストールしてみます。
857:nobodyさん
06/12/22 16:19:46 AlVoeTAq
教えて君ですみません。当方、SNSのプログラムを組みたいのですが、
どんな言語がお勧めでしょうか?
ちなみに,現在使っている言語は仕事上Fortran90です・・・。
858:nobodyさん
06/12/22 21:18:04
PHP
Java
C#
あたりが無難かな
言語としてのパフォーマンスを追求しなければ perl がいいと思うけど、
プログラムサンプルが膨大にあるためひどいのを参考にすると後々辛くなります
私は最初に kent を参考にしてしまったので後々苦労しました
859:nobodyさん
06/12/22 21:20:39
パフォーマンスってのは、起動スピードだけを考えた意味でのことです
860:nobodyさん
06/12/22 21:22:22
普通にmod_perlが楽だと思うが
861:857
06/12/23 00:54:59
kentはひどいんですかぁ。参考にしようと思っていたので、危なかったです。
忠告ありがとうございました!
言語は・・・、PHPとperlで比較して検討したいと思います!
862:nobodyさん
06/12/23 01:20:58
有名だから良いプログラムを書いている
という訳ではないので気をつけましょう
ダウンロードして無改造なの、 use strict; したとたんにエラーで止まりまくりのスクリプトは真似しちゃだめです。
KENT とか KENT とか KENT あたりが・・・
863:JAPU ◆lVJAPUTeX.
06/12/24 21:01:36
>>857
出来合いのもの使うならOpenPNEとか良いらしい。
個人的にはPHPなので使う気無いが。
>>859
比較する際にPerlだけCGIの速度を使うFUD手法ってのはまだ流行っているのかな?
864:nobodyさん
06/12/26 15:13:42 iyXMdNpc
.httaccessでドキュメントルートからリダイレクトで
同一サイト内の別ディレクトリに移動したいのですけど
例として
URLリンク(xxx.net)にアクセスすると
URLリンク(xxx.net)にリダイレクト
したいのですが、やり方がわかりません。
(ネットで検索をかけても、ホームディレクトリからのリダイレクトが検索できなかった)
教えてエロい人!
865:nobodyさん
06/12/26 15:16:54
Redirect permanent / URLリンク(xxx.net)
866:nobodyさん
06/12/26 15:32:01 iyXMdNpc
Redirect permanent / URLリンク(xxx.net)
意外にこれだとリダイレクトしません。
867:JAPU@坂井恋夏 ◆lVJAPUTeX.
06/12/26 20:58:14
Redirect は、指定した階層以下についてリダイレクトを行うため、
> Redirect permanent / URLリンク(xxx.net)
と指定した場合、
- URLリンク(xxx.net) → URLリンク(xxx.net)
- URLリンク(xxx.net) → URLリンク(xxx.net)
と延々とリダイレクトを繰り返す (ブラウザによっては途中で止まるかも) ことになります。
ここは、RedirectMatch を利用して、
> RedirectMatch permanent ^/$ URLリンク(xxx.net)
とするのがベストソリューションではないかと。
cf. URLリンク(httpd.apache.org)
868:nobodyさん
06/12/27 20:29:27
ライブチャットのシステムを作りたいのですが、
お勧めの開発環境はありますでしょうか?
(OS,言語,DB)
漠然とした質問で申し訳ありません。
869:nobodyさん
06/12/27 20:53:42
限りなく負荷を小さくしたいなら
Apache など HTTPD が映像を配信してしまえばいい
870:nobodyさん
06/12/28 00:59:27
>>868
漠然過ぎるから
RHEL、Java、Oracle10g
と答えておく
871:nobodyさん
06/12/28 04:26:42
>868
マルチポスト野郎は市ね
スレリンク(php板:67番)
872:nobodyさん
06/12/28 09:54:06
ここもな
ネットワークプログラミング相談室 Port18
スレリンク(tech板:782番)