バージョン選択

フォーラム

メニュー

オンライン状況

52 人のユーザが現在オンラインです。 (42 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 52
もっと...

サイト内検索

質問 > その他 > リダイレクト設定

その他

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
nanakoko
投稿日時: 2009/9/13 12:12
対応状況: −−−
一人前
登録日: 2009/8/18
居住地:
投稿: 139
Re: リダイレクト設定
ramrrun様!!!!

ブラウザのキャッシュクリアしたら解決しました!!!

本当に助かりましたm(_ _)m

ありがとうございます
nanakoko
投稿日時: 2009/9/13 0:34
対応状況: −−−
一人前
登録日: 2009/8/18
居住地:
投稿: 139
Re: リダイレクト設定
ramrunさま

土曜の夜にこんなこと考えさせてすみませんっ
ブラウザのキャッシュの件了解しました!
明日会社行って試してみますね
うまくいくといいなあ。。。

引用:

ramrunさんは書きました:
ちょうどいま、自分のほうでも確認しながらはまっていたところです(笑)。
で、なんとなく確信?を得てきました。

RewriteEngine on
RewriteBase /shop

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://www.ドメイン名.sakura.ne.jp/shop/$1 [QSA,R=301,L]

ポート80のとき
httpsのshopへ
これが最初の方の設定になりますが、httpでアクセスするとhttpsに飛ばされるが、そのhttpsは共有SSLのプロキシだから飛んだ先もやはりポート80なのでまたまた飛ばされる...
ようするにこの設定の場合、期待するのはリダイレクトループなんです。

引用:
これはhttpsでアクセスしたときにサクラ側で一旦別サーバを通してるという事なんですかね??
この辺って.htaccessが効かないのと何か関係があるんですかね?

httpがプロキシ経由になっていて、ポート80以外が使われているようなレンタルサーバがあったとすれば関係あります。
が、この件は飛ばす分にはポート80で間違いないので「効かない」のは考えづらいんですが、いまちょうど自分もそれではまってました。

というのは.htaccessを書き換えても反映しないという状況で、わかったのはブラウザのキャッシュのせいらしいということです。

例としては
RewriteRule .* https://my-domain/ [R,L]

で一旦、httpからhttpsへ飛ばすようにして動作を試した後、
RewriteRule .* http://www.yahoo.co.jp/ [R,L]

に書き換えてもyahooには飛ばずにhttpsのmy-domainのまま。
ブラウザはキャッシュが有効なとき、リクエストしないでキャッシュを引っ張ってくるためだと思われます。

で、.htaccessのリダイレクト先を変えたようなときは、とりあえずブラウザのキャッシュをクリアしてから動作を試すと良いと思います。

そのところを踏まえて、↓でいけるんじゃないでしょうか。
RewriteEngine on
RewriteBase /shop
RewriteCond %{HTTP:X-Forwarded-For} ^$
RewriteRule ^(.*)$ https://www.ドメイン名.sakura.ne.jp/shop/$1 [QSA,R=301,L]
ramrun
投稿日時: 2009/9/12 22:35
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: リダイレクト設定
ちょうどいま、自分のほうでも確認しながらはまっていたところです(笑)。
で、なんとなく確信?を得てきました。

RewriteEngine on
RewriteBase /shop

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://www.ドメイン名.sakura.ne.jp/shop/$1 [QSA,R=301,L]

ポート80のとき
httpsのshopへ
これが最初の方の設定になりますが、httpでアクセスするとhttpsに飛ばされるが、そのhttpsは共有SSLのプロキシだから飛んだ先もやはりポート80なのでまたまた飛ばされる...
ようするにこの設定の場合、期待するのはリダイレクトループなんです。

引用:
これはhttpsでアクセスしたときにサクラ側で一旦別サーバを通してるという事なんですかね??
この辺って.htaccessが効かないのと何か関係があるんですかね?

httpがプロキシ経由になっていて、ポート80以外が使われているようなレンタルサーバがあったとすれば関係あります。
が、この件は飛ばす分にはポート80で間違いないので「効かない」のは考えづらいんですが、いまちょうど自分もそれではまってました。

というのは.htaccessを書き換えても反映しないという状況で、わかったのはブラウザのキャッシュのせいらしいということです。

例としては
RewriteRule .* https://my-domain/ [R,L]

で一旦、httpからhttpsへ飛ばすようにして動作を試した後、
RewriteRule .* http://www.yahoo.co.jp/ [R,L]

に書き換えてもyahooには飛ばずにhttpsのmy-domainのまま。
ブラウザはキャッシュが有効なとき、リクエストしないでキャッシュを引っ張ってくるためだと思われます。

で、.htaccessのリダイレクト先を変えたようなときは、とりあえずブラウザのキャッシュをクリアしてから動作を試すと良いと思います。

そのところを踏まえて、↓でいけるんじゃないでしょうか。
RewriteEngine on
RewriteBase /shop
RewriteCond %{HTTP:X-Forwarded-For} ^$
RewriteRule ^(.*)$ https://www.ドメイン名.sakura.ne.jp/shop/$1 [QSA,R=301,L]
nanakoko
投稿日時: 2009/9/12 22:04
対応状況: −−−
一人前
登録日: 2009/8/18
居住地:
投稿: 139
Re: リダイレクト設定
ramrun様

ご返事ありがとうございます。
以下試してみたところ、すべてramrunさんの期待通りの結果になりました。

ところで、seasoftさんのご指摘頂いたときに
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=4595&forum=2&post_id=21099#forumpost21099
infophp()でサーバの情報を見たところhttpでもhttpsでもポートが80でした。
これはhttpsでアクセスしたときにサクラ側で一旦別サーバを通してるという事なんですかね??

この辺って.htaccessが効かないのと何か関係があるんですかね?

本当にいろいろ検討して下さってありがとうございます。

引用:

下の3つはどういう結果になりますか?

・ポート80の記述を追加(期待する結果:yahooに飛べる)
RewriteEngine on
RewriteBase /shop
RewriteCond %{SERVER_PORT} ^80$
RewriteRule .* http://www.yahoo.co.jp/ [R,L]


・無条件でhttpへ飛ばす(期待する結果:リダイレクトループ)
RewriteEngine on
RewriteBase /shop
RewriteRule .* http://ドメイン名.skaura.ne.jp/shop/ [R,L]


・無条件でhttpsへ飛ばす(期待する結果:リダイレクトループ)
RewriteEngine on
RewriteBase /shop
RewriteRule .* https://ドメイン名.sakura.ne.jp/shop/ [R,L]

ramrun
投稿日時: 2009/9/12 18:58
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: リダイレクト設定
引用:
yahooにリダイレクトされました

rewriteが全く効いていないのかもと思ったんですが、そうではないようですね。

下の3つはどういう結果になりますか?

・ポート80の記述を追加(期待する結果:yahooに飛べる)
RewriteEngine on
RewriteBase /shop
RewriteCond %{SERVER_PORT} ^80$
RewriteRule .* http://www.yahoo.co.jp/ [R,L]


・無条件でhttpへ飛ばす(期待する結果:リダイレクトループ)
RewriteEngine on
RewriteBase /shop
RewriteRule .* http://ドメイン名.skaura.ne.jp/shop/ [R,L]


・無条件でhttpsへ飛ばす(期待する結果:リダイレクトループ)
RewriteEngine on
RewriteBase /shop
RewriteRule .* https://ドメイン名.sakura.ne.jp/shop/ [R,L]


httpsのphp情報については、具体的にはプロキシの情報が見たいのですが、どんな項目が_SERVERに載ってくるのかわからないので、とりあえず全部見てみたいという感じです。

実は「お試し」の登録では共有SSLが使えないので、私のところでチェックできないもので(汗)。
nanakoko
投稿日時: 2009/9/12 17:43
対応状況: −−−
一人前
登録日: 2009/8/18
居住地:
投稿: 139
Re: リダイレクト設定
ramrun様

ご返事ありがとうございます。
PHP情報なんですが、どの情報を出したらまずいかすぐに判断がつかないので、月曜までお時間ください。
すみません

.htaccessについては、ご指示頂いたとおり設定してみたところ
yahooにリダイレクトされました。

RewriteEngine on
RewriteBase /shop

RewriteRule .* http://www.yahoo.co.jp/ [R,L]





引用:

ramrunさんは書きました:
httpsで管理画面に入って、システム設定のシステム情報のPHP情報より_SERVER〜の項目を全てコピペして教えてください。
(都合の悪い部分は伏字でかまいません)


次に.htaccessを↓のようにして、アクセスしたときにYahooに転送されるか試してください。

RewriteEngine on
RewriteBase /shop
RewriteRule .* http://www.yahoo.co.jp/ [R,L]

ramrun
投稿日時: 2009/9/12 11:47
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: リダイレクト設定
httpsで管理画面に入って、システム設定のシステム情報のPHP情報より_SERVER〜の項目を全てコピペして教えてください。
(都合の悪い部分は伏字でかまいません)


次に.htaccessを↓のようにして、アクセスしたときにYahooに転送されるか試してください。

RewriteEngine on
RewriteBase /shop
RewriteRule .* http://www.yahoo.co.jp/ [R,L]

nanakoko
投稿日時: 2009/9/11 21:02
対応状況: −−−
一人前
登録日: 2009/8/18
居住地:
投稿: 139
Re: リダイレクト設定

ramrun様

以下、ご返事遅くなって申し訳ありません。
試して頂いた設定内容なんですが、

↓これについては、当社ではshopフォルダ無しでやってます。
>2. マルチドメインの対象のフォルダをご指定ください
 指定フォルダ
 /home/eccube/www/shop

なので、
RewriteBaseについては
RewriteBase /shop/shopを
RewriteBase /shopで設定という事になると思うんですが、

>3. 共有SSLの利用を選んでください
 共有SSLを利用しない

については、共有SSLを使用するで設定しております。

なのでこちらの設定も「共有SSLを使用しない」に設定し、
上述の記載で.htaccessを設定し、
httpでアクセスしたところ、httpのままでした・・・。

思い通りに行きません・・・(> <)



引用:

ramrunさんは書きました:
気になったので「お試し」で登録してみました。
スタンダードプランです。

eccube.xii.jpドメインを追加し、その設定は下記

1. 設定をお選びください
 マルチドメインとして使用する(推奨)

2. マルチドメインの対象のフォルダをご指定ください
 指定フォルダ
 /home/eccube/www/shop

3. 共有SSLの利用を選んでください
 共有SSLを利用しない

eccube.xii.jpに対して/shopを割当ました。

ですので http://eccube.xii.jp/ にアクセスすると
/home/eccube/www/shop/index.html が表示される状況です。
(index.htmlを置いていれば)

そこにec-cubeを解凍し、
/home/eccube/www/shop/data/
/home/eccube/www/shop/html/
とし、htmlのままだとURLがカッコわるいのでshopに変更しました。
/home/eccube/www/shop/shop/

これで http://eccube.xii.jp/shop/ にアクセスするとEC-CUBEになるという状況です。

/home/eccube/www/shop/shop/.htaccess はもともとphpの設定が書かれていますが、Internal Server Errorになるので中身はすべて消して下記を追記。

RewriteEngine on
RewriteBase /shop/shop

# ドメインの統一
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://eccube.xii.jp/shop/$1 [QSA,R=301,L]


これで http://eccube.xii.jp/shop/ にアクセスすると https://eccube.xii.jp/shop/ に転送されているので、rewriteの設定は間違っていないようですよ。
nanakoko
投稿日時: 2009/9/11 20:58
対応状況: −−−
一人前
登録日: 2009/8/18
居住地:
投稿: 139
Re: リダイレクト設定
ramrun様

ご報告遅くなって申し訳ありません。
以下の設定して頂いた内容なんですが、

↓これについては、当社では、shopフォルダ無しでやってます。
>2. マルチドメインの対象のフォルダをご指定ください
 指定フォルダ
 /home/eccube/www/shop

なので、
RewriteBaseについては
RewriteBase /shop/shopを
RewriteBase /shopで設定という事になるんですが、

>3. 共有SSLの利用を選んでください
 共有SSLを利用しない

については、共有SSLを使用するで設定しております。

同じ条件で設定しようと思い、
共有SSLを外し、htaccessを上述通り設定しアクセスしてみましたが、httpでアクセスしてもhttpのままでした・・・。
うーん。。。

思い通りになりません(> <)
nanakoko
投稿日時: 2009/9/11 20:14
対応状況: −−−
一人前
登録日: 2009/8/18
居住地:
投稿: 139
Re: リダイレクト設定
Seasoft様

調べたところ、
両方とも(httpもhttpsも)同じ結果でした。

_SERVER["SERVER_PORT"]・・・80
_SERVER["REQUEST_URI"] ・・・/フォルダ/infophp.php

両方とも80って大丈夫なんでしょおか・・・。

引用:

> まだ勉強中の身でどう差異を確認したら良いか
> 分からないレベルです・・・。
> せっかくアドバイス頂いているのに申し訳ないです
> がんばります。

今回のケースでしたら、
_SERVER["SERVER_PORT"]
_SERVER["REQUEST_URI"] (← システム構成によって違うこともあったかも)
あたりが重要かと思います。
(1) 2 3 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,944名です
総投稿数は110,018件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.