ページ 1 / 1
SSLについて。
Posted: 2007年4月09日(月) 14:02
by momora
いつもお世話になっております。
CPIの共用SSLを使用したお問い合わせフォームをCMSDでフォーム項目などを書き換えられるように、制作しておりますが、CMSD本体を何処に置くかで悩んでおります。
CPIの共用SSLでは、secureというディレクトリ内にSSLで表示したいファイルを入れるのですが、CMSD本体とお問い合わせフォームのファイルをsecureディレクトリ内に設置した場合、問題なく表示されるのですが、SSL内のCMSDの内容をSSL以外のページへ出力する方法はあるのでしょうか?
CMSDについての質問と少し趣が違うのですが、何かヒントが有ればお教え頂ければ幸です。
ちなみに以下のような感じで、PHP側の設定を変えて試してみましたがやはりダメでした。
※サーバー設置内容
[html]フォルダ→testcms.php
[secure]SSLフォルダ→CMSD本体
コード: 全て選択
<?php require_once( "../secure/cmsdesigner/include/view.php.inc" ); // encoding="euc-jp" ?>
絶対パス
https://サーバのホスト名/~ユーザー/secure/cmsdesign ... ew.php.inc
CMSDをSSL用と通常ページ用で分けて設置すれば問題ないのですが、できればCMSDの管理を一元化したいと思いご連絡いたしました。
何卒、宜しくお願い申し上げます。
Re: SSLについて。
Posted: 2007年4月09日(月) 14:14
by webmaster
momoraさん、お世話になっております。
実際に試したことがないので確実なことが申し上げられないのですが、サーバに
よってはphpのrequire命令に「..」を含む相対パスを指定できない設定になって
いることがあります。
これは、phpスクリプトにセキュリティホールが存在した場合、それによって
そのファイルが存在するフォルダを超えた部分に対して無制限にアクセスを
させないようにする為の措置です。
相対パスはNGでも、絶対パスならばOKの場合があります。
一度、view.php.incのファイルを絶対パス指定で require_onceして頂いても
よろしいでしょうか。
ファイルの絶対パスは、
<?php echo __FILE__; ?>
と書く事で、そのファイル自身の絶対パスを表示させることができます。
上記の内容を適当な名前のファイルに書き込んで拡張子をphpにして保存し、
view.php.inc と同じ場所に置いて実行してみて下さい。
悪用されるといけませんので、試した後は、すぐにそのファイルを消すようにして下さい。
Re: SSLについて。
Posted: 2007年4月09日(月) 15:27
by webmaster
追記ですが、例え上記方法がうまくいったとしても、CMS Designerで管理している
画像などをSSL外のページに表示しようとすると、何らかのセキュリティメッセージを
ブラウザが出す可能性があります。
基本的には、SSLで保護するコンテンツとそうでないコンテンツを混在しない方が、
何かと都合が良いかもしれません。
Posted: 2007年4月09日(月) 18:34
by momora
webmaster様へ
早々にご返信頂きありがとうございました。
お教え頂いた方法で表示された絶対バスは以下のようになりました。
/usr/home/ユーザー名/secure/cmsdesigner/include/test.php
これを元に、
<?php require_once( "/usr/home/ユーザー名/secure/cmsdesigner/include/view.php.inc" ); // encoding="euc-jp" ?>
とPHPに埋め込みましたが、やはり表示されませんでした。
他には、
<?php require_once( "
https://www.アドレス/ユーザー名/secure/cmsdesign ... ew.php.inc" ); // encoding="euc-jp" ?>
ダメもとで、上記の記述でも試してみましたが、やはりダメでした。
ブラウザでは、特にエラーも表示されないのですがソースを見ると、上記のrequire_once部分がそのまま吐き出されていました。
普段は、当該部分のソースがそのまま吐き出されることは無いと思うので、CPIにも問い合せてたりして、もう少し色々と確認してみたいと思っています。
Posted: 2007年4月09日(月) 19:09
by RiU
横から失礼します。
私もCPIサーバで同様のことを試した実績があり、同様の箇所で悩んだ事が
ありますので、もしかしたら、お役に立つかもと思いましたので、レスをつけさせて頂きます。
(SSLの外にCMSDを設置し、SSL内からデータを呼び出すという形ですが)
おそらく、phpファイルを設置した階層で.htaccessが有効になっていないからでは
ないでしょうか?
CPIの場合.htaccessでPHPの場所を指定しないと動作してくれませんので、
SSL内(secure)とPHPファイルを設置したディレクトリの両方に必要になります。
アテが外れていたら申し訳ありません。
Posted: 2007年4月10日(火) 01:40
by momora
RiU様へ
うわ〜!!RiU様のご推察の通りでPHPファイルを設置したディレクトリのhtaccessファイルの記述が間違っていました。。。お恥ずかしい限りです。ご指摘いただき本当にありがとうございました!
また、webmaster様にもお忙しい中、大変丁寧にご指導頂き、ご迷惑をお掛けして申し訳ありませんでした。m(_ _)m
ちなみにPHP側の埋め込みに関しては、絶対パスでも相対パスでもOKでした。
私も同様の内容でどうして良いのかわからない状態です。
Posted: 2008年5月31日(土) 16:53
by suzuki
>RiUさん
私も同様の内容で現在こまってます。
CPIのサーバを利用中、(html)フォルダ内にCMSDは起動しています。
SSL内に設置したphpファイルから、CMSDの情報を開きたいのですが、設定の仕方がわかりません。
この情報を見ると
おそらく、phpファイルを設置した階層で.htaccessが有効になっていないからでは
ないでしょうか?
CPIの場合.htaccessでPHPの場所を指定しないと動作してくれませんので、
SSL内(secure)とPHPファイルを設置したディレクトリの両方に必要になります。
この一文がわかりません。
もし宜しければ.htaccessのソースを教えてもらえませんでしょうか
こんな感じの内容です。
Posted: 2008年6月06日(金) 22:26
by mojira
CPIの.htaccessですが、自分の場合は[secure]SSLフォルダ内も[html]フォルダ内にも以下の記述の
.htaccessファイルを置いています。
コード: 全て選択
AddHandler x-httpd-php442 .php .html
AddHandler x-httpd-php442 .php
※上記の記述ではphpファイルをhtmlファイルに偽装していますので、偽装の必要無い場合
には1行目を削除してくださいませ。
Posted: 2008年7月22日(火) 09:21
by suzuki
> mojira さん
返事が遅くなってごめんなさい
ありがとうございます。
この方法でトライしてみます。