• 締切済み

決まったサイトからのリンクのみを有効にするハック

asciizの回答

  • asciiz
  • ベストアンサー率70% (6642/9410)
回答No.1

>allow from .xxx.or.jp この書き方だと、「アクセス者のドメインがxxx.or.jpである時」に許可されます。(ここ、xxx.jp のつもりでした…? まあそれでもダメなんですが) アクセス者のドメインとは、通常はその人が契約しているプロバイダ、たとえばocn.ne.jp (OCN)だとか、biglobe.jp (Biglobe)などになります。 会社のインターネットからアクセスしている人は、その会社のドメイン名になるかもしれません。 さて、そう考えた時、xxx.jp のドメインを持つアクセス者なんていませんから、現在の状態ではどのようにリンクしても 403 Forbiddenになるでしょう。 そもそもの.htaccessの書き方が違ったわけです。 「特定のリンク元からのみアクセスさせたい」ならば、「リファラーによる判別」を行います。 >AdminWeb:アクセス制限 >https://www.adminweb.jp/apache/allow/ ↓ >AdminWeb: アクセス制限 > リンク制限(SetEnvIf, Referer) >https://www.adminweb.jp/apache/allow/index2.html ただし、ロリポップのサーバーで使えるかどうかは、試してみないとわかりません。 .htaccessに書くディレクティブは、サーバー設定で個別に有効化/無効化できますので、使用できなければ、もっと設定自由なレンタルサーバーを借りる必要があるかもしれません。(yyy.jp側で)

YOKOHAMA-Boy
質問者

補足

ぼかして書きましたが、A.決まったサイト:https://xxx.jp とは、ウィキペディアです。 日本人の研究者の日本語ウィキペディアのページを知人が編集中で、参考文献へのリンクを置こうとしています。 リンクは、B.ハックを置くサイト:https://yyy.jp 内のPDFやHTML(参考文献)にリンクします。 https://yyy.jpにある内容は公開できるものとそうでないものがあるので、基本非公開にしておいて、ウィキペディアからのリンクのみを通し、他ページにも行けないようにしたいのです。 この条件ですと、また違った回答になりますか? よろしくお願いいたします。

関連するQ&A

  • 独自ドメインでのアクセス制限

    現在、一つのロリポップサーバーでの独自ドメインでサイトとブログを運営しています。 ・サイト:ttp://www.Example.com(主) ・ブログ:ttp://blog.Example.com(サブドメイン) .htaccessで特定のIPからのアクセス制限をしたいと思っているんですが、下記のように記載しても制限されません。(試しに自分のIPも入れて試みました。) order allow,deny allow from all deny from xxx/0 deny from yyy/0 deny from zzz/0 ErrorDocument 403 403.html 主にサブドメインのブログのアクセス制限をしたいのですがサブドメインディレクトリに置いて.htaccessに名前を変更しても制限されません。 また、403.htmlも.htaccessと同じサブドメインディレクトリに置いてあります。 何か間違っている事があるでしょうか??

  • htaccessでoreder allow,denyとRewriteEngine onは同時に使える?

    .htaccessを使用して特定IP(***.xxx.xxx.xxx)からのアクセス制限と同時に特定IP(yyy.yyy.yyy.***)の場合は別サイトへ転送するのを同時にやりたいです。 独立して.htaccessに記述すると動作しましたが、2つとも記述すると動作しませんでした。 order allow,deny allow from all deny from ***.xxx.xxx.xxx RewriteEngine on RewriteBase / RewriteRule .* http://zz*.com/

  • アクセス制限について

    初めまして。 質問の内容ですが、www直下においてある.htaccessに動作確認の為自分のホストをdenyするように記述しても、フォルダBにあるファイルにアクセスできてしまいます。フォルダAのバナーは表示されなくなるのですが…。 ロボ避けが働かないと困るので、何とか機能させたいと思っています。ディレクトリの構成と内容は以下の通りです。 | .htaccess | フォルダA(直リンクバナーを置いています)   |-.htaccessなし | フォルダB(サイト本体です)   |-.htaccessあり | フォルダC(制限にかかった時表示するファイルを置いています)   |-.htaccessあり ==========直下の.htaccess=========== DirectoryIndex index.html .ht order allow,deny allow from all deny from xxx.xxx.xxx.xxx deny from 自分のホスト名 <Files ~ "^\.ht"> deny from all </Files> <Files robots.txt> order deny,allow allow from all </Files> ==========フォルダB=========== DirectoryIndex index.html .ht ErrorDocument 403 /フォルダC/403.html order allow,deny allow from all deny from yyy.yyy.yyy.yyy <Files ~ "^\.ht"> deny from all </Files> ====================== です。長くてすみません。 以前動作確認した時はちゃんと弾かれていたのですが、最近フォルダBにある.htaccessを編集した時に再度動作確認してみると弾かれなくなっていました。 フォルダBに自分のホストをdenyするように書くとちゃんと機能します。どの辺りをいじればいいでしょうか?

    • ベストアンサー
    • HTML
  • 携帯サイト htaccessによるIP制限

    携帯サイトをPCからアクセスできないようにするため、htaccessを使ってIP制限をしたいのです。 下記アドレス7のロリポップのレンタルサーバーに書かれていた方法 http://lolipop.jp/?mode=manual&state=hp&state2=htaccess_03 で試みましたが、全く作動しません。普通にPCから見れてしまいます。 order deny,allow deny from all allow from 許可したいホスト・IP  ←携帯各社のIPをズラズラと並べました。 アップロードして拡張子は.htaccessに変更し、ファイルの属性も604にしました。 サイトの説明通りにしているつもりなのですが、他にも何か設定の項目があるのでしょうか? 実際にロリポップを使用されている方がいましたら助かります。 アップロードはロリポップのFTPやフリーソフトのFFFTPも使ってみましたが、結果は同じでした。

  • .htaccessファイル

    ロリポップでサーバーをレンタルしています。 エラー表示画面を自作で作り 「ErrorDocument 404 http://xxx.xx.jp/error/404.html」 上記内容で.htaccessファイルを作り使用しています。 このような状況の中、 最近海外からの妙なアクセスが増えて来たので制限をかけたいのですが、 現在の↑.htaccessのファイルに下記のようにそのまま続けて書いて行ってよいのでしょうか? (↓.htaccessでjpドメイン以外を弾く) order deny,allow  deny from all    allow from .jp ・エラー表示は今まで通りそのまま使いたい ・アクセス制限をかけたい 以上、 書き方が分からず悩んでいます。 ご教示お願いいたします。。

  • .htaccessで直リンク規制

    会員制のページの入ってるフォルダを.htaccessで指定されたところ意外からのアクセス(直リンク)を規制しようと思って以下の内容のファイルを置きました SetEnvIf REFERER "OOO\.ddo\.jp/OOO\.html" Lilith Order Deny,Allow Deny from all Allow from env=Lilith しかしこれだと、許可したページ(上記の「OOO\.ddo\.jp/OOO\.html」の部分)からのアクセスでもはじいてしまってForbiddenのエラーが表示されてしまいます。どう対処すればいいのでしょうか?アドバイスお願いします。

  • .htaccessで特定のサイトからのアクセスも弾けるのでしょうか?

    .htaccessで特定のサイトからのアクセスも弾けるのでしょうか? 最近、わけあって来て欲しくない人が居て、.htaccessでその人だけを弾いています。 order allow,deny allow from all deny from ●●.ne.jp といった風に表記しています。(●●の部分はその人のプロバイダ名) これだと、●●というプロバイダの人は全員エラーページが出て表示されない筈なのですが、 たとえば、特定のプロバイダの人を弾くのではなく、 http://■■.jp/ といったアドレスや、 http://■■.jp/link.htm といった、■■の人のアドレスから、私のサイトへ来る人全員をエラーページにさせる方法はあるのでしょうか? 個人のプロバイダの特定ではなく、相手のサイトから来て欲しくないのです… .htaccessが使用可能なサーバーを利用しています。 どうかアドバイスいただけますと幸いです。お願いします

  • htaccessによるスパム制御について

    htaccessによるスパム制御について HPをいくつか運営しておりまして、悪質なスパムが絶えないためhtaccessで拒否設定を行いましたが、すり抜けられてしまいました。私の設定に問題があるのかもしれないと思い相談します。 現在の設定は ------------------------------- order allow,deny allow from all deny from 163data.com.cn ------------------------------- なのですが、破られてしまいました。アクセスしスパムを行った人のホストは「116.xxx.xxx.xxx.broad.fz.fj.dynamic.163data.com.cn」 となっています。毎回変わりますが「dynamic.163data.com.cn」の部分は不変です。 htacessには他の書き入れもしていますがアクセス制御に関する設定はこの三行のみです。 よろしくお願いします。

  • CGIへの直リンク防止方法について

    CGIへの直リンクの防止方法について質問です. MacOS X でWEBサーバーを構築しています.httpdはapacheです. 現在,http://www.aaa.jp/bbb/ccc.htmlからhttp://www.aaa.jp/cgi-bin/ccc.cgiへリンクさせています.ccc.htmlへは.htaccessを用いてパスワードによるアクセス制限を行っております. 今の設定ですと,cgiファイルへ直接リンクできてしまいます.そこで,直接リンクを防止するために,apache内に <Directory /library/var/cgi-bin> SetEnvIf Referer "^http://www\.aaa\.jp/ ref_ok order deny,allow deny from all allow from env=ref_ok </Directory> という記述をしました.しかしこの記述を加えるとcgiを実行できなくなってしまいます.cgi-biフォルダ内の.htaccessを有効にして,.htaccessで記述してもうまくいきません. この記述はhttp://www.shtml.jp/htaccess/referer.htmlを参考にしました. どこがおかしいところはありますでしょうか. ご教授お願いします.

  • .htaccessを使いエラーが起きたら飛ばす

    Apacheで.htaccessを使いアクセス制限をしようとしています。 そして403エラーが起きたら指定のファイルにリダイレクトするというのを試みているのですがうまくいきせん。 問題点を絞るべくなるべく簡単にしてみました。 a.phpファイル (http://xxx.yyy.co.jp/ に存在します) <?php print("a"); error_log("a"); ?> b.phpファイル (a.phpと同様にhttp://xxx.yyy.co.jp/ に存在します) <?php print("b"); error_log("b"); ?> .htaccessファイル ErrorDocument 403 http://xxx.yyy.co.jp/b.php deny from all <Files ~ "\.(html|php)$"> allow from all </Files> この.htaccessの意図は拡張子がhtmlとphpのファイルだけにアクセスを許可します。 そしてそれ以外でアクセスしてきて403エラー(forbidden)が出た場合b.phpにリダイレクトしようとしています。(話を簡単にするため他のエラーについては省略します) 問題が出る流れ 1:まずブラウザでhttp://xxx.yyy.co.jp/a.phpにアクセスします。 2:なぜか ErrorDocument 403 に引っかかり http://xxx.yyy.co.jp/b.php に飛んでしまいます。 もちろんこのとき http://xxx.yyy.co.jp/ に a.php はちゃんと存在しています。 よって「ErrorDocument 403 http://xxx.yyy.co.jp/b.php」をまるごと.htaccessから削除してもう一度アクセスしても当然403エラーは出ません。 ちなみに本当にエラーだった場合の処理はうまくいっていて、存在しないファイルで例えば下記のようなURLでアクセスをした場合は正しく http://xxx.yyy.co.jp/b.php に飛びます。 http://xxx.yyy.co.jp/a.ccc 問題は何故エラーでもないのにErrorDocument 403で飛んでしまうのかです。 やはり.htaccessの設定の仕方が悪いのでしょうか。

    • ベストアンサー
    • PHP