バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > モバイルで商品の注文ができません

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ゲスト
投稿日時: 2008/6/10 15:19
対応状況: −−−
Re: モバイルで商品の注文ができません
引用:
この現象は、かなり初歩的なソースコードのミスだと思うのですが
ちゃんとテストしてから、リリースしているのでしょうか。
不思議です。

ミスというよりは、ページの増加や各部品の追加・整理などで同時に変更すべきところを半ば放置で先に進もうとしているような感じを受けてます。
テストはおざなりに行いリリース後、利用者からの報告を待っているのでしょう。


同様の不具合が出ているとのことですが、ソースを適当にgrepしてみると似たような場所が沢山HITしてきます。
この不具合は
[前提]session.auto_start=0
[前提]session.use_trans_sid=1
[前提]SESSION_KEEP_METHOD=="useCookie"
・クッキーが利用できないブラウザ
・処理中にリダイレクト(?)

といった条件が揃ったときに発生するのではないかと思います。
私のところでは再現しないため、確実に他にも要因はあるはずですがちょっと追いきれません。

若干逸れましたが、原因を特定するためにはどういう手順でどんな画面遷移を行った時におかしくなったのか、がはっきりしていないと目星もつけられないと思います。
Duke
投稿日時: 2008/6/10 19:20
対応状況: −−−
新米
登録日: 2008/6/10
居住地: Osaka
投稿: 2
Re: モバイルで商品の注文ができません
ようやく分かりました。

まず、僕のサーバでDOCOMO端末で購入できない理由は
Apacheのconfファイルで
AllowOverride All
していないことによる原因でした。

AllowOverride Allをしていないと
html/mobile/.htaccess で指定してある
php_flag session.auto_start 0
php_flag session.use_trans_sid 1
が、配下のディレクトリに有効にならないため
モバイル端末で、セッションが失われてしまっていたようです。

ちなみに、html/.htaccessでは、上記の指定はコメントアウトされていますが、これを外すと管理サイトが動かなくなりました。

以上ですが、お役に立てれば幸いです。
ゲスト
投稿日時: 2008/6/13 13:56
対応状況: −−−
Re: モバイルで商品の注文ができません
私もPHPSESSID=が毎回違い困っていました。

下記URLを参考にしたら改善されました。

http://www.cry-tech.com/?cat=31
john
投稿日時: 2008/6/23 16:12
対応状況: −−−
常連
登録日: 2008/2/20
居住地:
投稿: 34
Re: モバイルで商品の注文ができません
引用:

下記URLを参考にしたら改善されました。

http://www.cry-tech.com/?cat=31

上記URLを参考に各種変更をしたところ、
携帯でも購入できました!…が、新たな問題が(TOT)!

・管理画面のポップアップされる項目(帳票作成、デザイン管理、システム管理、郵便番号DB登録等)
がログアウト状態になり利用できない。(メッセージ『ログイン認証の有効期限切れの可能性があります。』)
・ショップのTOPページ以下すべてのURLにセッションID(?PHPSESSID=〜)が表示される。

帳票作成が利用できないのは痛いです…。
当方環境x現行バージョンで全てを求めるのは無茶なのでしょうか…。

テスト環境:
EC-CUBEバージョン 2.2.0-beta
PHPバージョン PHP 5.2.5
DBバージョン MySQL 5.0.27-standard-log
@ファーストサーバ・ギガント2(PHP4では安定、PHP5では問題多発。fsvのPHP4サポートは08/06/30まで)

ディレクトリ構成(これも原因のひとつかも)
htmlディレクトリ:www/html
dataディレクトリ:www/data

ファーストサーバxEC-CUBEバージョン 2.xの事例がもっと知りたい…。
そういったスレッドを立てるべきなのかな。
mica
投稿日時: 2008/6/23 17:03
対応状況: −−−
新米
登録日: 2008/6/23
居住地:
投稿: 3
Re: モバイルで商品の注文ができません
場当たり的な対応になりますが、此方が立てばあちらが立たずという状況のようなので。

/data/class/session/SC_SessionFactory.php で定義されているSC_SessionFactoryクラスのgetInstanceメソッドを次のように変更します。
    function getInstance() {

        $type = defined('SESSION_KEEP_METHOD')
            ? SESSION_KEEP_METHOD
            : '';
        // *******************************************************
        // モバイル用ページの場合はセッション管理をuseRequestで固定。
        $type = defined('MOBILE_SITE') ? 'useRequest' : $type;
        // *******************************************************

        switch($type) {
        // セッションの維持にリクエストパラメータを使用する
        case 'useRequest':
            $session = new SC_SessionFactory_UseRequest;
            defined('MOBILE_SITE')
                ? $session->setState('mobile')
                : $session->setState('pc');
            break;

        // クッキーを使用する
        case 'useCookie':
        default:
            $session = new SC_SessionFactory_UseCookie;
            break;
        }

        return $session;
    }


上記の修正を施し、パラメータの「SESSION_KEEP_METHOD」を「useCookie」に戻せば動くと思いますがどうでしょう。

コア部分に手を加えることになるのであまり気が進みませんが・・・。
john
投稿日時: 2008/6/23 19:22
対応状況: −−−
常連
登録日: 2008/2/20
居住地:
投稿: 34
Re: モバイルで商品の注文ができません
micaさん、ビンゴです!
提示していただいた修正で携帯購入できました!

ファーストサーバのPHP4サポート終了(6/30)直前のことなので本当に救われた思いです。
他にも問題は山積みですが、これで今夜からはよく眠れそうです。

スレ主様、投稿者のみなさま、本当にありがとうございました!
では、次の問題解決(イプシロン携帯決済とか)へと旅立ちたいと思います!

追記:
…と思ったら今度はDocomo端末でのアクセスにおいて302エラー「無効なデータを受信しました」と出るように。
(softbank、au端末では正常です。)
ためしにtest.htm(記述は『This is test.htm』のみ)というファイルをモバイルディレクトリに置いてアクセスすると問題なく表示できます。

同様の問題を取り上げた
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=1250&forum=10&post_id=3946#forumpost3946
の修正
引用:

/mobile/.htaccessに以下を追加したら、正常に表示されました。
php_flag session.hash_function 1

も行ってみましたが効果は見られませんでした…。
しかたなく解決するまでdocomoユーザー非対象です

新スレッドを立てるべきかとは思いますが、流れとして追記しました。
有力な解決法をご存知の方は是非お願いします…。
kaiware
投稿日時: 2008/7/2 13:49
対応状況: −−−
新米
登録日: 2008/5/7
居住地:
投稿: 3
Re: モバイルで商品の注文ができません
こちらの処理をしていると、ゼウス決済が上手く作動しなくなります・・
どなたか、解決法ご存知でしたらお教えください
topo
投稿日時: 2008/7/8 11:07
対応状況: −−−
常連
登録日: 2008/6/11
居住地: 岡山
投稿: 64
これでどうでしょう?
私は2点の対応をしてドコモでも利用可能になりました。
みなさんが同じ現象かわかりませんが対処の手助けになれば幸いですm(._.)m

----------------------------------------
【問題】
Docomo端末でのアクセスにおいて302エラー「無効なデータを受信しました」と出る

----------------------------------------
【状況確認】
data\logs\site.logに以下のエラーが出ている事を確認。

引用:

【A】2008/07/07 19:45:33 [/i/index.php] Non-existent session id : sid=44393a10f43eeb152da2c13cff47afb28f40b0e8 from xxx.xxx.xxx.xxx
【B】2008/07/07 19:45:34 [/i/index.php] Ip Addr mismatch : xxx.xxx.xxx.xxx != xxx.xxx.xxx.xxx(expected) : sid=73bac2268b103ec3635cea421d2f4051 from xxx.xxx.xxx.xxx


----------------------------------------
【Aへの解決策】
そもそも302ってなぜ起きるのかを確認していたところ
『リダイレクト先のパスがhttp://〜から始まる絶対パスでないとダメ』という
記述を見つけて色々調べていきました。
http://oshiete1.goo.ne.jp/qa752327.html

結局それが関係しているのかどうかまで切り分けできませんでしたが
以下のramrun様記載の内容を試してみるとAのエラーは発生しなくなりました。

投稿日時: 2007-4-27 12:51
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=flat&order=ASC&topic_id=588&forum=4

----------------------------------------
【Bへの解決策】

次にIPアドレスのアンマッチについてですが、そもそもドコモの端末については
アクセスしている最中でもころころIPアドレスが変わるのはご周知の通りかと思います。
なのでそもそも以下の処理がどこまで意味があるのかよくわかりませんでした^^;
ドコモの時だけチェックを甘くする事で対応してみましたが、無論セキュリティを
考慮してこの処理になっていたのでしょうから以下のコードについてはあくまで
実験的なものです。
申し訳ありませんがご利用にあたっては自己責任でお願い致しますm(._.)m

引用:

【ファイル】data\class\session\sessionfactory\sc_sessionfactory_userequest.php

/**
* REMOTE_ADDRとセッション中のIPが同じかどうかを判定する.
* 同じ場合にtrueが返る
*
* @return boolean
*/
function validateIp() {
$ip = $this->getIp();
if (!empty($_SERVER['REMOTE_ADDR'])
&& $ip === $_SERVER['REMOTE_ADDR']) {

return true;
}

/* 追加ここから */
$objAgent =& Net_UserAgent_Mobile::singleton();
if ($objAgent->isDoCoMo()) {
return true;
}
/* 追加ここまで */

$msg = sprintf('Ip Addr mismatch : %s != %s(expected) : sid=%s',
$_SERVER['REMOTE_ADDR'], $ip, session_id());
GC_Utils_Ex::gfPrintLog($msg);
return false;
}

john
投稿日時: 2008/7/8 13:51
対応状況: −−−
常連
登録日: 2008/2/20
居住地:
投稿: 34
Re: これでどうでしょう?
topoさんありがとうございます!
A、B両エラーへの処理をおこなったところ、Docomoでも問題なくアクセス→購入できました!

もうサーバを変えようか、バージョンを落とそうか、EC-CUBE ONEに手を出そうか、というところだったので…。
おかげさまで大いに救われました!
topo
投稿日時: 2008/7/8 14:18
対応状況: −−−
常連
登録日: 2008/6/11
居住地: 岡山
投稿: 64
Re: これでどうでしょう?
おお、それはよかった!

結果的に私の方で対応策が用意出来ましたが、その過程までをjohn様の方でいろんな方にご質問されていたので私も非常に助かっておりました。

FSVで苦しんでいる者同士頑張りましょう^^
今後も情報交換よろしくお願い致しますm(_ _)m
« 1 2 (3) 4 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,709名です
総投稿数は109,948件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1570
9
mcontact
1285
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.