• ベストアンサー

アクセス元IPで別のディレクトリを表示

お世話になります。 FreeBSD + Apache でhttp通信の アクセス元:192.168.0.*** → /home/www/ アクセス元:それ以外 → /home/www/gaibu/ とアクセス元のアドレスによってディレクトリを変えたいのですが、方法を教えてください。 目的はローカルと外部で別のページを表示させたいからです。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

Apache ならば mod_rewrite モジュールを使うことでお望みの動作は可能でしょう。 http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html この辺りを見ると REMOTE_ADDR も条件として使えるようですので。

参考URL:
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html
tetsu-jin
質問者

お礼

内容が異なるので別に質問させていただきます。 ありがとうございました。

tetsu-jin
質問者

補足

回答、遅くなりました。 本日やっとの事挑戦する事が出来たのですが、どのような設定を入れてもmod_rewriteが効きません。 httpd.confファイルに書き込んで試しています。 LoadModule rewrite_module modules/mod_rewrite.so AddModule mod_rewrite.c のどちらも書いてあるにもかかわらず、下記のテスト設定でもうまくいきませんでした。 RewriteEngine on RewriteCond %{REMOTE_ADDR} ^192\.168\.1\.3 RewriteRule ^.*$ - [F] どこに問題があるかわかりますか?

関連するQ&A

  • ディレクトリの中身を見せなくする設定

    いつもお世話になります。 FreeBSD 4.7-RELEASE-p28とApache/1.3.33でWEBサーバー(レンタル)を構築しております。 htmlやshtmlファイルがないディレクトリにアクセスすると 「Index of ~」と表示されディレクトリの中身が見えてしまいます。 これを見えなくするようにしたいのですが、設定方法が分かりません。 大変恐縮ですが、どなたかご教示お願いいたします。

  • ドメイン名がIPアドレスで表示されるのは何故?

    Apacheでホームページを立上げましたが、ブラウザで見るとするとドメイン名がローカルIPアドレスで表示されます。TOPページはドメイン名でアクセスしているのですが、ページを移動するとローカルIPアドレスの表示に変わってしまいます。原因を教えて頂けないでしょうか。

  • apacheのhtdocs

    毎度、お世話になってます。 またくだらない質問かもしれないのですが、 apache で、htmlドキュメントその他いわゆるWebページとして 公開するファイルを置くディレクトリに良く見られるのが /usr/local/apahce/htdocs 等だと思われます。 ですが、私の環境(FreeBSD Release6.1+Apache1.3.34)だと インストール後のデフォルトが /usr/local/www/data になってる ようです。いわゆるレンタルサーバなどの場合、前者/usr/local/apache/htdocs みたいなのを良く見かけたのですが (OSはFreeBSDのバージョン違い)これって、違ってるのが普通 なんでしょうか。 個人的感覚からして、こういうディレクトリ構造ってある程度 似通ってるのが普通なんじゃないかと思っていたのですが。

  • ディレクトリの移動 cd 

    初め、/usr/localにapache-ant-*-bin.tar.gz (/home/usrname/ダウンロード/下にある)を展開しようとして次のコマンドを実行しました。 /usr/local$ tar -xzvf /home/usrname/ダウンロード/apache-ant-*-bin.tar.gz すると cp: ディレクトリ `./apache-ant-1.7.0' を作成できません: Permission denied と出て、できませんでした。次にディレクトリを移動して ~/ダウンロード$ tar -xzvf apache-ant-*-.bin.tar.gz を行い、またディレクトリを移動して /usr/local$ cp -r /home/usrname/ダウンロード/apache-ant-* . のコマンドを実行するとまた cp: ディレクトリ `./apache-ant-1.7.0' を作成できません: Permission denied と表示されて移動させることができません。。 なんででしょうか?お願いします。

  • 複数のグローバルIPから1台のサーバーにアクセス

    現在、Apache/FreeBSDにてWebサーバーを構築しています。 今までは、ADSLにルーター(192.168.1.254)を接続してローカル側にサーバー機(192.168.1.200)を置いていました。ここに新たに回線とルーター(192.168.1.253)を接続してどちらのルーターからもサーバに向けてポートをあけてあります。 この状態で、新たに接続したルータ側からアクセスしてもサーバーを開くことが出来ませんでした。 そこでいろいろ試した結果ゲートウエイに設定したルータのみ外部アクセスを受け付けるようです。 どちら側からアクセスしてもサーバーを開けるようにするのは無理なのでしょうか? 説明がわかりにくいかもしれませんが、よろしくお願いします。

  • Apache2で仮想ディレクトリ(alias)の設定について

    お世話になります。 下記の環境で社内WEBサーバを構築しています。 OS:CentOS4.4 httpd:Apache2.0.61 httpd.confの内容 ServerRoot "/usr/local/apache" User apache Group apache DocumentRoot "/usr/local/apache/htdocs" <Directory "/usr/local/apache/htdocs"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> Alias /icons/ "/usr/local/apache/icons/" <Directory "/usr/local/apache/icons"> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all </Directory> Alias /info/ "/home/info/" <Directory "/home/info"> AllowOverride None Order allow,deny Allow from all </Directory> 上記のようなhttpd.confを書いて、 "/home/info/"以下のファイルに"www.example.co.jp/info/"で アクセスしたいと考えています。 しかしブラウザから確認をすると、 You don't have permission to access /info/index.htm on this server. Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request. のエラーが表示されます。(当然、希望するページは表示されません) 実際のディレクトリのパーミッションも確認しましたが、設定されているように思えます。(私の知識不足、誤認識であれば指摘ください。) drwxr-xr-x 6 root root /home drwxrw-r-x 2 info apache /home/info "/home/info"には766・755・744のどれをあてても同じ結果です。 また、"/home/info"以下のファイル"index.htm"は存在を確認し、 パーミッションも下記のように確認しています。 -rwxr-xr-x 1 root root index.htm ファイルの所有者・グループは"root"になっていますが、これはテスト的に作成したもので、実際の運用は"info"ユーザで作成されます。 httpd.confやパーミッションの設定で間違っているところがあれば ご指摘をおねがいいたします。 また情報が不足していましたら、補足に載せますのでご指摘をお願いします。

  • apache2でユーザーディレクトリが

    apache2でユーザーディレクトリを使いたいんですが ただのapacheではデフォルトでユーザーディレクトリがつかえるんですが 403でパーミッションを直して使えて apache2でいろいろ apache2.confなどにuserdir.cなどのモジュールを読み込ませたり sites-avalias/defaultに /home/*/public_htmlなど試してみたいんですが ダメみたいです ちょっと省略していますが ちなみにバージョンはApache/2.2.3です エラーは http://xxxxx/~ユーザー名 にアクセスすると 403ではなく404エラー フォルダが無いということは sites-avalias/defaultかapache2.confの設定がおかしいんでしょうか? ちゃんと /home/xxxx/public_htmlも作ってありますし パーミッションもあっています しかし <Directory /home/xxx/public_html>などの設定をしたいんですが sites-avalis/defaultに書くのか それともapache2.confに書くのかまぎらわしくて defaultのほうには<Directory /var/www>など書いてあって apache2.confにはmoduleなどいろいろ書いてあります apache2がhttpd.confではなくてまぎらわしくてよくわかりません それとバージョンなど古かったりなど違ったりして できないみたいです Apache/2.2.3でユーザーディレクトリを使っているかた 詳しく教えて下さいお願いします

  • 別のディレクトリーの設定の仕方は?

    サンダーバード60.9を使用しています。 OS(windows10 home)をクリーンインストール後に、保存していたプロファイルを適用させて以前の状況に復元させたと思ったのですが、メールを読む を選択しても開かないアカウントが1つありまして、 アカウント設定>編集とアドレス> を選択すると、 トースト通知で サーバー設定「ローカルディレクトリーのパス(F:アカウント名:フォルダ名)は無効です。別のディレクトリーを選択してください。」 と出てきます。 しかし、ディレクトリーをどこで選択して設定してやればいいのかが分かりません。 この読めないアカウントのサーバー設定は間違っていないようです。 なぜなら、作成と送信は出来、他のアカウントで受信できたからです。 届いていない時に返ってくるメールもきていないようなので、サーバー上では受信は出来ているのではないでしょうか。 なので別のディレクトリーを設定できれば済むはずなので、わかる方回答お願いします。

  • URLで自分のディレクトリ名(~.co.jp/~taro)を別のディレクトリ名(~.co.jp/~hanako)で表示させる方法ありますか。

    LHR8.0でapacheをつかって自分のHPを公開しています。コンテンツはtaro/ディレクトリ以下にありますのでブラウザのアドレス欄にはhttp://www.aaa.bbb.jp/~taroと表示されます。 この***/~taroを***/~hanakoというように別のディレクトリ名で表示させることはできますか。 ディレクトリ名から自分のHPとわからないようにしたいというのが動機です。

  • 同一ドメインで特定のディレクトリのみ別サーバで応答させる

    同一ドメインで特定のディレクトリのみ別サーバで応答させることは可能でしょうか? 現在、以下のような構成で運用しています。 http://hoge.jp/ → ルータ → 192.168.100.10 これを特定のディレクトリへのアクセスの場合にローカルネットワーク上の別のサーバで 応答させたいのです。 http://hoge.jp/test/ → ルータ → 192.168.100.20 構成は以下のようになります。 OS:Ledhat ES4 webサーバ:Apache 2.2 ルータ:YAMAHA RTX1000 ルーターかサーバでできる方法を教えてください。 因みに固定IPは新規に取得できません。 以上、宜しくお願い致します。