web-dev-qa-db-ja.com

.htaccessを使用して、本当のURLを隠すことはできますか?

だから私は1つのメインウェブサイトを持つウェブホテルを持っています

http://www.myrootsite.com/

プロジェクトと呼ばれるフォルダ内のサブディレクトリにあるいくつかのウェブサイト。

サブディレクトリを指すドメイン名がありますが、これらのWebサイトのリンク上にマウスを置くと、URLが次のように表示されます。

http://www.myrootsite.com/projects/mysubsite/contact.html

mysubsite.comにいるとき、次のように表示されます。

http://www.mysubsite.com/contact.html

私はウェブホテルのサポートに話をし、男は。htaccessを使ってみようと言ったが、これをどうやって行うのか正確にはわからない。

お時間をありがとうございました!

編集:詳細

私のウェブサイトはhttp://www.example1.com/で、http://www.example2.com/も所有しています。

example2.comのファイルはすべてexample1.com/projects/example2/にあります。

example2.comにアクセスすると、次のURLのすべてのポイントに気付くでしょう。

example1.com/projects/example2/

しかし、私は彼らに向けてほしい:

example2.com/

これはできますか?これがあなたが進むのに十分な情報であることを願っています:)。

編集:w3dの場合

URL mysubsite.comにアクセスすると、ブラウザにmysubsite.comというURLが表示されます。使用しているサービスは、myrootsite.comの周りにiframeを作成し、URL mysubsite.comを使用します

FirefoxとInternet Explorerでは、リンク先のURLがmyrootsite.com/projects/mysubsite/...であることを示すリンク上にマウスを置くと、それが嫌いです。

2

多くのWebサイトやユーザーを危険にさらす可能性があるため、実際のURLを非表示にすることはできませんが、次のようなリダイレクトページを作成できます。

<?php
$url = $_GET['url'];
header('Location: '.$url);

。htaccessでファイル名を変更できます

1

これは、ホスティングISPが最後に再ポイントすべきものです。

<VirtualHost *:80>
    ServerName www.mysubsite.com
    DocumentRoot /path/to/projects/mysubsite
</VirtualHost>

.htaccessで修正できる場合があります。

RewriteCond %{HTTP_Host}  ^www\.mysubsite\.com [OR]
RewriteCond %{HTTP_Host}  ^mysubsite\.com
RewriteRule ^(.*) /path/to/projects/mysubsite/$1 [L]

I did notRewriteRuleに渡されるフラグに[R]を含めることに注意してください。これは、WebサーバーにリダイレクトをWebブラウザーに送り返すよう指示するためです。 2つのサイトが異なるサーバー上にある場合、mod_proxyを有効にする必要があります。

RewriteCond %{HTTP_Host}  ^www\.mysubsite\.com [OR]
RewriteCond %{HTTP_Host}  ^mysubsite\.com
RewriteRule ^(.*) http://www.myrootsite.com/projects/mysubsite/$1 [P,L]
1
Joe