全くの初心者でお恥ずかしいのですが、
plaincart(www.phpwebcommerce.com)をSSLにて設置したいと思っています。
下記の式はplaincartのconfig.phpの一部でサーバルートをセットアップする事との
所です。(検討違いかもしれませんが、たぶんこのへんが怪しいと思う所を
コピペします。)
$thisFile = str_replace('\\', '/', __FILE__);
$docRoot = $_SERVER['DOCUMENT_ROOT'];
$webRoot = str_replace(array($docRoot, 'library/config.php'), '', $thisFile);
$srvRoot = str_replace('library/config.php', '', $thisFile);
define('WEB_ROOT', $webRoot);
define('SRV_ROOT', $srvRoot);
以上を
普通のhttpに設置すると(ステップサーバーです。)
img src="/hoge/hogehoge/plaincart/images/image.png"
のようにリンク画像その他が正常にリンク出来るのですが
https (ssl)に設置すると
img src="/export/usr/home/ex********/ssl_html/hoge/hogehoge/plaincart/images/image.png"
のようにSSLディレクトリのパスになってしまい、リンク出来ないで途方にくれています。
どのような理由が考えられますでしょうか?
またどのように記述し直したらsslでもリンクして正常に設置出来るようになるでしょうか?
どうかよろしくお願い致します。
No.1ベストアンサー
- 回答日時:
共有SSLだからだと思います。
#独自ドメインと共有SSLで $_SERVER['DOCUMENT_ROOT']ずれてしまっているんじゃないかと。
とりあえず安直的な対策方法として
$thisFile = str_replace('\\', '/', __FILE__);
$docRoot = $_SERVER['DOCUMENT_ROOT'];
/* 共有SSL対策に以下1行を追加*/
$sslRoot = '/export/usr/home/ex********/ssl_html';
/* 共有SSL対策で修正 */
//$webRoot = str_replace(array($docRoot, 'library/config.php'), '', $thisFile);
$webRoot = str_replace(array($sslRoot, $docRoot, 'library/config.php'), '', $thisFile);
$srvRoot = str_replace('library/config.php', '', $thisFile);
define('WEB_ROOT', $webRoot);
define('SRV_ROOT', $srvRoot);
のようにしてはどうでしょう。
ハードコーディングが入ってしまうので、メンテナンス性が悪いですが
ご回答、誠にありがとうございます。できました!
ex**********は必要のようでしたので
自分では到底考えられませんでしたが、
NARH様に頂いた式を参考にさせて頂き、
下記のように $ssslRoot = '/ssl_html';
を追加してすべて解決致しました。素晴らしいです。
何日もあれこれいじりましたが分からなかったので大変助かりました。
本当にありがとうございます。
又何かありましたら是非よろしくお願い致します。
$thisFile = str_replace('\\', '/', __FILE__);
$docRoot = $_SERVER['DOCUMENT_ROOT'];
$sslRoot = '/export/usr/home';
$ssslRoot = '/ssl_html';
$webRoot = str_replace(array($sslRoot,$ssslRoot,$docRoot, 'library/config.php'), '', $thisFile);
$srvRoot = str_replace('library/config.php', '', $thisFile);
define('WEB_ROOT', $webRoot);
define('SRV_ROOT', $srvRoot);
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- その他(プログラミング・Web制作) laravel 本番環境でメールが送れません。 1 2023/02/17 17:57
- PostgreSQL PostgreSQL14.6のSSL対応について 1 2023/01/05 15:42
- その他(プログラミング・Web制作) 恒久的リダイレクトについて 2 2023/07/13 15:58
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- その他(プログラミング・Web制作) mariadbでのエラー 1 2022/11/15 12:31
- HTML・CSS 【HTML】【CSS】【Swiper】 元の画像は横1200×縦600なのですが、実際のサイト上に反 5 2022/07/16 13:57
- 扇風機・冷風機・サーキュレーター 台所のハネ換気扇について 2 2022/10/25 17:31
- WordPress(ワードプレス) httpからhttpsへのリダイレクト設定について 2 2022/04/17 09:49
- PHP 共通の処理をまとめる方法がわからないのでアドバイスお願いします。 1 2022/12/19 20:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
__FILE__をHTMLタグ内で使う
-
OkwebとOKWeveって一緒ですか?
-
フォントの色を変えるには?
-
PHPの設定で、 エラーが発生し...
-
onedrive にexcelファイルをア...
-
Linux:PHPでTELNETによるSMTP...
-
ListViewコントロールでサムネ...
-
ボタンのクリック数を合計保存...
-
ワードプレス、Contact Form 7...
-
PHPのif文でその処理を途中で抜...
-
現在位置より2つ上のディレク...
-
別ファイルの変数を呼び出した...
-
【file_exists】ファイルが存在...
-
UWSCでファイルのアップロード...
-
PHPExcel処理速度が遅い
-
PHPで`headers already sent`と...
-
【PHP】declare命令で”Fatal er...
-
PHP8を使うと、大量のWarningが...
-
mysql_close()
-
aws cloud9というものを使って...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
index.phpに入るには、どうすれ...
-
.htaccessファイルの修正がこれ...
-
PHPでグローバルナビゲーション...
-
CakePHPの表示エラーについて
-
深い階層のフォルダの作成や削...
-
特定のディレクトリだけ、phpを...
-
PHP Linux から Windowsへの移行
-
zendのcontrollersについて
-
SSLに設置したらディレクトリパ...
-
すべてのページのurlをindex.ph...
-
include_pathに関する質問
-
require_onceで読み込む場合、...
-
相対パスでrequireはできないの...
-
[PHP] 任意のDNSでIPアドレスを...
-
さくらにsmartyをセットアップする
-
$_GET 取得できない
-
世界人口白書って何ですか?
-
include時の頭の良いパス指定に...
-
値の引継ぎについて
-
万国博覧会
おすすめ情報