バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 新規ページの中身が表示されません。

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
seasoft
投稿日時: 2009/8/3 21:24
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: 新規ページの中身が表示されません。
引用:

それで、管理画面の”システム情報”で、PHPの”_SERVER["PHP_SELF"]”の内容が、
/www.xxxx.co.jp/admin/system/system.php/ となっていたので、
SC_Helper_PageLayout.php の、下記のヶ所を$_SERVER['PHP_SELF']⇒ $_SERVER['REDIRECT_URL']に変えました。
これは、 $_SERVER['REDIRECT_URL']の内容が、/admin/system/system.phpになっていたからです。
=============================================================
function sfGetPageLayout(&$objPage, $preview = false, $url = ""){
$debug_message = "";
$arrPageLayout = array();


if ($preview === false) {
if ($url == "") {
/*↓この個所を
$url = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];*/
   //この様に↓
$url = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REDIRECT_URL'];

}
==============================================================
この修正によって、中身が表示されなかったページ全てが表示されるようになりました。

結果的に、表示されているのですが、これを変えたことによって何かに影響するとか、あまり良くないとか無いでしょうか?


Zend によると
引用:

Apache のおかしな挙動

Apache の 404 ハンドラを使用して リクエストをフロントコントローラに渡したり、 PT フラグを rewrite ルールで使用したりする場合は、 必要な URI 情報が含まれるのが $_SERVER['REQUEST_URI'] ではなく $_SERVER['REDIRECT_URL'] であることに注意しましょう。 この設定を使用して無効なルーティングを取得したい場合は、 デフォルトの Http クラスではなく Zend_Controller_Request_Apache404 クラスを使用してリクエストオブジェクトを作成しなければなりません。
との事です。

ということは、本件ではそれで良いのかも。(詳細未確認)

しかし、他でも同様の影響があるかもしれないことを考慮すると、共通の初期化処理などで、スーパーグローバル変数 $_SERVER['REQUEST_URI'] の内容を、$_SERVER['REDIRECT_URL'] で上書きしたほうが良いような印象も。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

pantacle
投稿日時: 2009/8/3 22:48
対応状況: −−−
長老
登録日: 2009/6/29
居住地: 富山
投稿: 242
Re: 新規ページの中身が表示されません。
$_SERVER['REDIRECT_***'] のような 'REDIRECT_' で始まる値はmod_rewriteの影響下でしか存在しないことになっています(たしか)。
ですので $_SERVER['REDIRECT_***'] を使用することで後々ハマることもありえます。

本件は確かmod_rewriteで複数ドメインを実現している環境の筈ですので杞憂かとは思いますが念の為。


----------------
pantacle
http://pantacle.net/

it3
投稿日時: 2009/8/4 9:45
対応状況: −−−
一人前
登録日: 2009/3/16
居住地:
投稿: 94
Re: 新規ページの中身が表示されません。
引用:

mahalo_cさんは書きました:
$_SERVER['REDIRECT_***'] のような 'REDIRECT_' で始まる値はmod_rewriteの影響下でしか存在しないことになっています(たしか)。
ですので $_SERVER['REDIRECT_***'] を使用することで後々ハマることもありえます。

本件は確かmod_rewriteで複数ドメインを実現している環境の筈ですので杞憂かとは思いますが念の為。


では、私の今の環境だから動いているという事なんですね。
とりあえず、この状態で運営しながら注意しておきます。

ありがとうございました。m(_ _)m




it3
投稿日時: 2009/8/4 10:09
対応状況: −−−
一人前
登録日: 2009/3/16
居住地:
投稿: 94
Re: 新規ページの中身が表示されません。
引用:

seasoftさんは書きました:

しかし、他でも同様の影響があるかもしれないことを考慮すると、共通の初期化処理などで、スーパーグローバル変数 $_SERVER['REQUEST_URI'] の内容を、$_SERVER['REDIRECT_URL'] で上書きしたほうが良いような印象も。



スーパーグローバル変数は、任意のものに変更可能なんでしょうか?
可能であれば、どこで変更できるのでしょうか?

seasoft
投稿日時: 2009/8/4 10:18
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: 新規ページの中身が表示されません。
変更するのは、Apache のソースを書き換えないといけない予感が・・・

上書きでしたら、通常の変数代入と同じく「 = 」演算子で可能です。

配置する場所は、色々と考えられますが、私なら SC_Initial 辺りを最初に検討するかも。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

it3
投稿日時: 2009/8/7 10:20
対応状況: −−−
一人前
登録日: 2009/3/16
居住地:
投稿: 94
Re: 新規ページの中身が表示されません。
引用:

seasoftさんは書きました:
変更するのは、Apache のソースを書き換えないといけない予感が・・・

上書きでしたら、通常の変数代入と同じく「 = 」演算子で可能です。

配置する場所は、色々と考えられますが、私なら SC_Initial 辺りを最初に検討するかも。


ありがとうございます。
教えていただいた所やいろいろ見て、調整したいと思います。
« 1 2 3 (4)
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は89,303名です
総投稿数は110,082件です

投稿数ランキング

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