特定のサイトからのリンクのみ入室可能な
ページを作りたいのですが、どうすればよいのでしょうか?
ご指導お願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

完全とは言えませんが、CGIを使えばできると思います。


ブラウザからの環境変数、HTTP_REFERERとあらかじめ指定したURLと比較して入場の許可・排除すれば良いと思います。

参考URL:http://tohoho.wakusei.ne.jp/wwwcgi3.htm#CgiEnvir …
    • good
    • 0

CGIでしょうね。


手っ取り早く済まそうと思えば、フリーのものをDLしてはどうでしょう。

参考URL:http://www.kent-web.com/
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Q.htaccessで特定のページからのリンクのみ受け付けたい

.htaccessを使ったことがなく初心者です。
特定のページからのリンクのみ受け付けるディレクトリに設定する.htaccessを作りたいのですが、
どのようにしたらよいでしょうか。

http://www.aaa.jp/blog/blog1/index.phpで

blog1/移行のディレクトリを

http://www.aaa.jp/.../ccl.cgi
からのアクセスのみ受け付けたい。

のです。宜しくお願い致します。
また、複数ディレクトリに設定する事は可能でしょうか?

Aベストアンサー

http://oshiete1.goo.ne.jp/qa2078751.html
の回答をご覧ください。
尚、そちらにも有るとおりクライアントがRefererを吐かない場合があり
(大概はセキュリティSOFTで制限している場合)
リンク元だけで制限すると、そういう人は全くアクセス出来なくなりますので
上記回答の様にリンク元が正しければそのままアクセス(Refererを吐く場合)
そうでなければパスワード入力(Refererを吐かない場合)という形にして
リンク元のページにパスワードを記述しておけば用は足りるかと思います

Qプログラムで入力した数値を変更したい場合はどのようにすればよいのでしょ

プログラムで入力した数値を変更したい場合はどのようにすればよいのでしょうか?
初めまして。現在Scilabを用いてプログラムを書いているのですが、入力変数が多いために、入力ミスをしたときに修正するプログラムを書こうとしています。たとえば、
for x=1:100
y(x)=input('y=');disp(y);
end;
という、100個変数を入力する場合を考えているのですが、変数を入力し間違えた場合に、最初からやり直すのは面倒なので、これを補うプログラムを考えてほしいのです><;
入力変数は毎回ことなるので、どこかに保存ということもできず・・・。入力をし間違えた場合にループを一つ戻るようにするにはどのようにすればよいのでしょうか?

Aベストアンサー

今までScilabを使ったことがなく作法など知りませんので参考と思ってください。

こういうので用は足せるかと思います。
・ループのカウントはforに任せず自前で行う。
・入力は一旦文字列で行う。
・入力がeだったらループ終了。
・入力がdだったらひとつまえのループに戻る。
・入力が数字だったら文字列を数値に変換して配列に値を入れて次のループへ。
・入力が上記以外だったら今のループを維持。

なぜeで終わりみたいなふうにするかというと、こうしておけば例えば入力する数値が100個だったとして、100個目を入れそこなった時でも修正できるからです。

y=[];
x=1;
while %t
in=input('y('+string(x)+')=','string');
if in <> ''
select in
case 'e'
break;
case 'd'
if x>1
x=x-1;
end
else
ierr=execstr('num=eval(in)','errcatch');
if ierr == 0
y(x)=num;
x=x+1;
end
end
end
end
disp(y);

今までScilabを使ったことがなく作法など知りませんので参考と思ってください。

こういうので用は足せるかと思います。
・ループのカウントはforに任せず自前で行う。
・入力は一旦文字列で行う。
・入力がeだったらループ終了。
・入力がdだったらひとつまえのループに戻る。
・入力が数字だったら文字列を数値に変換して配列に値を入れて次のループへ。
・入力が上記以外だったら今のループを維持。

なぜeで終わりみたいなふうにするかというと、こうしておけば例えば入力する数値が100個だったとして、100個...続きを読む

Q特定のサイトからのリンクを拒否する。

ある特定のサイトからリンクしてきた方を自動的に別サイトへ飛ばすということは可能なのでしょうか。
相手が不快な方なので、そこから訪れた方を自分のサイトへ絶対に入れたくないのです。
毎日毎日その場所からアクセスした形跡があり、気が滅入りそうな毎日です。

幾ら言っても駄目だったので、最終手段と思いここに書きました。
どんな方法でも構いません。出来れば具体的にお願い致します。

Aベストアンサー

一番いいのは、その掲示板の管理者に連絡してその書き込みを削除してもらうことですが…
多分それはもう試されたのでしょうね。しかし無視されたということでしょうか。それならそこからのリンクを拒否することはfuture9さんにとって当然の自衛手段であり、なんらやましいことではありません。

ちなみにOK-Web/教えてgoo!で検索してみたら同様の相談がありましたので以下のページも参考にされると良いかと思います。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=162697
http://oshiete1.goo.ne.jp/kotaeru.php3?q=145137
http://oshiete1.goo.ne.jp/kotaeru.php3?q=141144
http://oshiete1.goo.ne.jp/kotaeru.php3?q=10294

さてfuture9さんのプロバイダーではCGIが使えるでしょうか? CGIが使えるなら特定のサイト以外のところからリンクされた場合、別のサイトに飛ばすようなスクリプトがあるのでこれを使うのが一番いいと思います。(参考URL)
残念ながらCGIが使えないとなるとJavascriptを使うしかないでしょう。その場合は相手がJavascritptをオフにしたら無効になってしまいますが。Javascriptを使う方法は上の過去質問のなかで取り上げられています。

参考URL:http://www-power.net/cgi/other/access_blocker/link_blocker/

一番いいのは、その掲示板の管理者に連絡してその書き込みを削除してもらうことですが…
多分それはもう試されたのでしょうね。しかし無視されたということでしょうか。それならそこからのリンクを拒否することはfuture9さんにとって当然の自衛手段であり、なんらやましいことではありません。

ちなみにOK-Web/教えてgoo!で検索してみたら同様の相談がありましたので以下のページも参考にされると良いかと思います。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=162697
http://oshiete1.goo.ne.jp/kotaeru.php...続きを読む

QZIP内の特定のファイルのみ抽出してZIP作成

ZIPファイル内の特定のファイルのみ抽出してZIPファイルを作成
したいのですが、パイプ等を使ってうまくできないでしょうか?

次のようにコマンドをいくつかあわせればとりあえず出来るのですが…
mkdir temp
unzip src.zip *.jpg -d temp
cd temp
zip -m ..\dst.zip *

もっとよい方法をご存知の方がいましたらご教授願います。

次のようにも試してみたのですが、うまくいきませんでした。
unzip -p src.zip *.jpg | zip dst.zip -

OSはWindowsXPです。
ZIPプログラムは必要であれば特定のZIPプログラムを
使用してもいいです。

Aベストアンサー

ANo.1 です。
そうですね。簡単なコマンドですむ方法はむずかしいかもしれませんね。
それでは、思いついたことをいくつか。

(1) zip 内のファイルを削除する方法の場合。
新しい zip ファイルを 3 個つくるなら、3 個以上のコマンドが必要でしょう。

copy src.zip 1.zip & zip -d 1.zip "*" -x "?.jpg" "??.jpg" "???.jpg"
copy src.zip 1000.zip & zip -d 1000.zip "*" -x "1???.jpg"
copy src.zip 2000.zip & zip -d 2000.zip "*" -x "2???.jpg"

上の 3 行を 1 行につないでもよいのでしょうが、ややこしくなるだけでしょう。
ファイル名が簡単なワイルドカードで表せる場合は、これでどうでしょうか。

(2) *.jpg のファイル名が簡単なワイルドカードで指定できない場合。
(たとえば数字といっしょにアルファベットが混じるファイル名があって、それは zip ファイルにしたくないとか)
ファイル名がいろいろあって簡単に指定できない場合は、ファイル名のリストを作っておくのがわかりやすいでしょう。
ファイル名がわからないときは
zipinfo -1 src.zip "1???.jpg" > 1000.lst
などとしていったんリストを作って、余計なファイルが混じるならあとで編集するなどの手間が必要かもしれません。
そのうえで、unzip でひとつずつ展開して、そのたびに zip でアーカイブに加えていくとかは、どうでしょう。

for /f %i in (dst.lst) do (
unzip src.zip %i
zip -m dst.zip %i
)

バッチファイルにして、dst のところを 1 とか 1000 とか 2000 とかのコマンドライン・パラメータで与えるのもいいかもしれません。
ファイル名の番号に規則性があるならリストファイルにしないで、
for /l %i in (1 1 999)
などと、連続した番号を生成するのもありかなと思います。

ANo.1 です。
そうですね。簡単なコマンドですむ方法はむずかしいかもしれませんね。
それでは、思いついたことをいくつか。

(1) zip 内のファイルを削除する方法の場合。
新しい zip ファイルを 3 個つくるなら、3 個以上のコマンドが必要でしょう。

copy src.zip 1.zip & zip -d 1.zip "*" -x "?.jpg" "??.jpg" "???.jpg"
copy src.zip 1000.zip & zip -d 1000.zip "*" -x "1???.jpg"
copy src.zip 2000.zip & zip -d 2000.zip "*" -x "2???.jpg"

上の 3 行を 1 行につないでもよいのでしょうが、...続きを読む

Q特定の列のみ置換を行いたい

sedコマンドを使用して、カンマで区切られた
3フィールド目の空白文字列を全てNULLに
置換するにはどうすればよろしいのでしょうか。
教えて下さい。
(例)
a c,d f, 12
g i,j l, 45
m o,p r, 3

a c,d f,12
g i,j l,45
m o,p r,3
のようにしたいのです。

Aベストアンサー

こんなのでどうでしょうか。
一応質問の例ではうまくいくはずです。

sed -e 's/\([^,]*,\) */\1/2'
or
sed -e 's/\(\([^,]*,\)\{2\}\) */\1/'

##1のパターンは*?やらが使えてもダメですね

空白文字列にはタブなども含まれるとかなら適当に修正してください。


このカテゴリの人気Q&Aランキング

おすすめ情報