[Tep-j-general] Re: レンタルサーバーでの問題

アーカイブの一覧に戻る

Tsukasa Sakaguchi t-sak****@brain*****
2003年 2月 3日 (月) 12:49:56 JST


さかぐち@brainheartsです。こんにちは。
以下、参考になりますかどうか。

From: norit****@sendm*****
Date: Sat, 01 Feb 2003 18:14:44 +0900 (JST)
Subject: [Tep-j-general] レンタルサーバーでの問題

> サブドメイン型のレンタルサーバーへosCommerceをインストールしましたが、
> 管理メニュー画面内の「オンライン・カタログ」=カタログページへのリンクが
> 意図した所になりません
> リンク先は http://www.userdomain/~username/catalog/ となるはずですが
> http://www.userdomain/catalog/ になってしまいます
> どこを修正すればいいのでしょうか?

これを修正するのは、少々手間がかかります。
# この部分だけでよければ簡単ですが、おそらく、管理画面で商品の画像が
# 表示できていなかったりするのでは? と思います

うまく機能しない原因は、

>   define('DIR_WS_CATALOG', '/catalog/');

の部分です。
/admin/includes/header.php でリンク先が指定されていますが、
--
<a href="' . DIR_WS_CATALOG . '">' . tep_image(DIR_WS_IMAGES . 
'header_checkout.gif', HEADER_TITLE_ONLINE_CATALOG, '53', '50') . '</a>
--
となっているので、サーバのルートからリンクが張られてしまいます。
なので、この部分を変えてあげればいいわけですが、

>   define('DIR_WS_CATALOG', '/~username/catalog/');

と変えてしまうと、

>   define('DIR_FS_CATALOG', DIR_FS_DOCUMENT_ROOT . DIR_WS_CATALOG);

が /home/username/public_html/~username/catalog/ となってしまうので
よろしくありません。
# // * DIR_FS_* = Filesystem directories (local/physical)
# // * DIR_WS_* = Webserver directories (virtual/URL)
# と明記してありながら、実際にはこれらを結合して使っている時点で
# 使い分けに失敗しているように思うのですが...

そこで、当方では、

  define('DIR_WS_CATALOG', '/catalog/');
  define('DIR_WS_CATALOG1', '/~username/catalog/');

と2つ定義を追加して、header.phpのリンク先を DIR_WS_CATALOG1 に変更しました。
configure.phpには、DIR_WS_CATALOGが使われている定義がいくつかあるので、
それも変更しました。

  define('DIR_WS_CATALOG_IMAGES', DIR_WS_CATALOG1 . 'images/');
  define('DIR_WS_CATALOG_LANGUAGES', DIR_WS_CATALOG1 . 'includes/languages/');

これが、よい修正方法かどうかわかりませんが、とりあえず問題なく動いています。

-- 
BrainHearts Corp.
Tsukasa Sakaguchi / t-sak****@brain*****
Tel. 045-290-7561



Tep-j-general メーリングリストの案内
アーカイブの一覧に戻る