
WEBアプリを開発しています。
(windows・IISです)
今回初めてシステムをSSL対応で納品することになりました。
今まで何度か質問させていただき、それほど大きな変更はないと知り安堵していたのですが、
いざ、修正しますと結構、力仕事的にあることがわかりました。
cgiアプリのプログラムで、必要な箇所に"https://localhost/"を、くっつけるよう直していましたが
静的なhtmlファイルやjsファイルなどは、
動く環境に合わせて、直接ファイルを開けてURLを書き換えないといけないです!
納品時に、またお客様の環境に合わせた修正をしなければならない???
お客様の環境が変わったら?
それは無理!
と、焦りました。
で、調べていましたら「ルート相対パス」にしておけば
テスト時でも、納品しても 変更しなくて良いとのこと!?
(ルート相対パス・・・初めて知った無知者です)
<img>はsrc="/xxx/xxx.png"、
ルート直下であれば src="/xxx.png"
js、cssなど、src=関連は全てsrc="/・・・"
<form>のactionも action="/cgi.exe"
などにすればよいのでしょうか?
自分で確認しろ!と言われそうですが、なにぶん テスト環境はdebug用SSL環境ですし
納期は迫っているし、
皆さんのアドバイスで少しでも正確な(?)方法で動ければ、、、と
質問させていただきました。
※因みにSSLのデバック環境だと、「セキュリティに問題があります」などのエラーが出るのは仕方の無いことでしょうか?
推奨されないという「サイトの続行」でテストしようとしていますが。
(やっとSSLのdebug環境ができたばっかりなんです)
以上、よろしくお願いします。
No.4ベストアンサー
- 回答日時:
ルート相対パス、もしくは相対パスで全部記述すればいいです。
SSLのエラーは、証明書の問題ですからどうでもいいです。
確認すべきは、目的のページアクセスができているかどうかです。
そもそもページ自体の飛び先がhttpsになってないとか、
ページ内でhttpsアクセスになってない要素(imgとか)があるとか。
naktakさん、ありがとうございます。
まだこれから試験ですが、
トップページは表示できています。
DBをまだ作成していないので、これから環境を整えます。
>SSLのエラーは、証明書の問題ですからどうでもいいです
安心しました!
ありがとうございました。
No.5
- 回答日時:
「ルート相対パス」で用語の混乱が見られるようなので補足しておきます
これは Adobe が提唱している「サイトルート相対パス」から来ていると思われます。
下記にAdobe, RFC の説明を併記します。
■Adobe の説明
- 絶対パス (http://www.adobe.com/support/dreamweaver/content … など)
- ドキュメント相対パス (dreamweaver/contents.html など)
- サイトルート相対パス (/support/dreamweaver/contents.html など)
※http://helpx.adobe.com/jp/dreamweaver/using/link … でリンクの種類の説明有。
※http://helpx.adobe.com/jp/dreamweaver/kb/233307. … によるとDreamweaver ヘルプでも説明されている模様。
■RFC2396 (URI: Generic Syntax) の説明
- 絶対パス (文中に該当語なし。RFC2396に倣うならBNF式 "abs_path" が該当。)
- 相対URI (BNF式 "relativeURI" で定義。相対パス、絶対パス、認証URI、クエリ文字列の組み合わせ総称)
- 絶対URI (BNF式 "absoluteURI" で定義。 http://www.adobe.com/support/dreamweaver/content … など)
※http://jbpe.tripod.com/rfcj/rfc2396.ej.sjis.txt に原文(和訳)有。
■RFC3986 (URI: Generic Syntax) の説明
- 相対パス (該当語なし)
- 絶対パス (BNF式 "path-noscheme" で定義。 /support/dreamweaver/contents.html など)
- 相対参照 (BNF式 "relative-ref" で定義。RFC2396における相対URIに相当。)
- 絶対URI (BNF式 "absolute-URI" で定義。 http://www.adobe.com/support/dreamweaver/content … など)
※http://www.ietf.org/rfc/rfc3986.txt に原文あり。
RFC とはインターネット関連技術の標準化団体を指し、この規定が標準と思って差し支えありません。
Adobe は「サイトルート(公開サーバのルートディレクトリ)からの相対パス」という意味で「サイトルート相対パス」と表現していますが、これは RFC 定義の「絶対パス」を指します。
また、Adobeが説明する「絶対パス」は RFC における「絶対URI」を指します。
特に「絶対パス」の定義がまるで違いますので、他人に説明するときに誤解を招かぬよう RFC 定義で覚えておくことをお勧めします。
# Re: jg1wjzさん
No.3
- 回答日時:
いやはや、そんな基礎的なところで・・大丈夫ですか??
HTTPプロトコルとブラウザの基本的な動作ですが・・
たとえば
GET: http://hoge.com/abc/def.html
というファイルは、
http:HTTPプロトコルで
// インターネット上の
hoge.com サーバーにある
/abc/efg.html というファイルを要求します。
hoge.comというHTTPサーバーは、そのファイルを提供し(実在の有無は関係ない)
そのファイルを提供し
ブラウザは、そのページを提供したサーバーやプロトコル、ファイル名を知っているので、そのページ(http://hoge.com/abc/def.html)内に
src="/abc/abc.jpg" なら、 hoge.comに、HTTPプロトコルで、/abc/abc.jpg を要求しますし
src="../aa.gifなら、hoge.comに対して、HTTPで /aa.gifを要求します。
スタイルシートがあれば、同様ですし、
そのスタイルシートに@importがあれば、そのスタイルシートからのパス
http も https も通信経路が暗号化されるだけで内部処理は変わりません。テスト用はhttp://local.hostで試せばよいだけです。
ORUKA1951 さん、ありがとうございます。
お恥ずかしい話ですが、WEBシステムの基礎的な知識がないまま、
オフライン系のプログラマーから移行していまして。。。
そして、いろいろな事情もあり、周りには教えてくれる人は誰もいません、と言いますか
私一人です。
よく知らないまま、いろんな掲示板でお世話になりながら
ここまできてしまいました。^^;
おっしゃっていることはだいたいわかります。
でも じゃあ、説明してみろ! といわれたら、言葉に詰まります。
正しい用語で説明できない。。。
勉強不足も承知しています。
これでいいのか、毎回悩んでいるのも事実です。
それでも限られた時間内で仕上げなければならず、突貫工事のような毎日。
>http も https も通信経路が暗号化されるだけで内部処理は変わりません。テスト用はhttp://local.hostで試せばよいだけです。
他者さんの開発したシステムも参考にさせていただきながら、これも掲示板などで
教えていただきました。
そしてそれを実際に実現するに当たり、試行錯誤で質問させていただきました。
周りには教えてくれる人も、うなづいてくれる人も、誰もいないので
基礎的なこと、単純なことかもしれませんが質問させていただきしまた。
暖かいご指導、感謝いたします。
今後ともよろしくお願いいたします。
No.2
- 回答日時:
基本的な設計が悪いだけです。
>cgiアプリのプログラムで、必要な箇所に"https://localhost/"を、くっつけるよう直していましたが
これもおかしい。
ディレクトリ構成を利用者・開発者で同じ環境を用意すれば良いこと。
社内SEもあなたも勉強不足。
絶対パスでも相対パスでも、環境の設計さえ統一できれば問題は生じないです。
たぶん、あなたは前任者から開発を任されたのかと思います。
今回を契機に、サイトのディレクトリ構成を、依頼者と意識統一したほうが良いと思います。
それを行うだけで、後継者の作業は楽になります。
Indomethacinさん、有難うございます。
>これもおかしい。
すみません、自分のコーディングレベルで書いてしまいました。
debugなので localhost で。
実際にはお客様の環境のURLになります。
>ディレクトリ構成を利用者・開発者で同じ環境を用意すれば良いこと。
ディレクトリ構成は同じと思います。
(サーバーを構築して納品)
>社内SEもあなたも勉強不足。
おっしゃるとおりです。
面目ない。。。
あっ、いろいろな事情があり、社内SEはいません。
>今回を契機に、サイトのディレクトリ構成を、依頼者と意識統一したほうが良いと思います。それを行うだけで、後継者の作業は楽になります。
ディレクトリ構成は全てルート直下で動いています。
ログファイルだけは別ディレクトリに保存。
(こんな回答でいいのか???)
今回、後任者もできそうで、いろいろ統一化・共通化に向けて動こうとしていますが
個人的には、全て作り変えたほうがいいと思ってるしだいです。
なにしろ、一ヶ月かかる工数を「とりあえず動けばいい」と言われ
それこそ詳細仕様も把握できないまま一週間で作り上げ、作り上げてしまえばそこのところはもうノータッチ、異常系bugが出たら大騒ぎ?! 周りはみんな「敵」
・・・すみません、愚痴ってしまいました。
気を取り直して、ご指導有難うございました。
No.1
- 回答日時:
書かれている方法は相対パスでは無く絶対パスですね。
プロトコルやホスト名を省略しておけば、ブラウザはその時使用しているプロトコル、ホスト名を使って補完してくれるので、ディレクトリ構造が変わらなければ本番環境へ移しても修正は必要なくなります。
また、相対パス(src="../hoge/x.png" って感じ)でもプロトコルやホスト名を省略しているので、ブラウザが補完してくれるためディレクトリ構造が変わらなければそのまま使えます。
「セキュリティに問題があります」はテスト環境のFQDNとSSL証明書のFQDNが異なっているから出るんじゃないでしょうか。
予算に余裕があるならテスト環境用のSSL証明書を取得するという手もありますが、無駄な出費だと思いますので、そのままテストするのがいいのではないでしょうか。
t_ohta様、早々の御回答ありがとうございます。
今までは
SRC="hoge.png"
action="hogo.exe"
などとしていましたので
SRC="/hoge.png"
action="/hogo.exe"
だけでいいのですね!
助かりました。
ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 労働相談 合意済み仕様の商品納入後における仕様変更要求への対応について 5 2023/04/19 09:41
- サーバー Webサイト構築フリーランスの案件受注について 1 2022/03/27 18:16
- Visual Basic(VBA) M365環境での動作エラー、及び対応相談 1 2023/01/27 04:18
- ルーター・ネットワーク機器 通信量や通信量による影響を計算し想定できますか 3 2023/01/13 09:07
- 一眼レフカメラ 「Imaging Edge」を手動起動せず、ARWファイルを最高画質JPEGへ変換する方法は? 2 2022/08/05 11:38
- ルーター・ネットワーク機器 AU光10G回線について 6 2022/07/25 00:12
- アプリ swiftでスマホアプリを開発した時の動作確認 1 2023/02/14 11:37
- その他(パソコン・スマホ・電化製品) アプリを開いたときに「通信に失敗しました 通信状態の良いところで 再度お試しください」と表示される 6 2022/09/20 10:19
- イヤホン・ヘッドホン・補聴器 HD660SかHD650のヘッドホン購入を考えています。今回、ヘッドホンを購入は初めてでありますが、 1 2022/10/27 10:18
- Access(アクセス) こんにちは。Accessのことで教えてください。M365環境で、Private Declare Fu 1 2023/01/09 14:59
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
formのaction属性に設定する値...
-
許可IP以外からアクセスがあっ...
-
MINEタイプの設定
-
リンク先指定のフォルダーがブ...
-
存在しないページを指定してもT...
-
ルート相対パス
-
Tera Termでのコマンド流し込み...
-
Thunderbird 振り分けされなく...
-
NetBTエラーとbrowserエラーが多発
-
フォルダのサムネイル画像
-
APNS certificateって何?
-
Xpマシンですが、時々動作が...
-
撮影後、SDカードに作成される...
-
C:\\Documents and Settingsが...
-
vbからのファイル操作について
-
共有フォルダの共有権限の移行...
-
VBA Bookの表示、非表示
-
サクラエディタに使用できるvbs...
-
vbsファイルによるネットワーク...
-
logrotateの実行時間
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
大文字はできるだけ使わない方...
-
存在しないページを指定してもT...
-
HTMLで大文字と小文字を区別し...
-
Apacheで特定のファイルのみア...
-
htaccess ssi basic認証
-
FFFTPを使ったアップロードがで...
-
BASIC認証でダイアログが開かない
-
「メンテナンス中」と表示するには
-
XAMPPのドキュメントルート変更...
-
私のブログの先頭ページがおか...
-
C++でWEBブラウザを作成する
-
XAMPPで外部からアクセスする方法
-
Xampp-win32-1.7.3に切り替えた...
-
dojoをドキュメントルートの上...
-
ブラウザで動作確認しようとし...
-
win7でhttpdを動かしたい。
-
public_htmlは必要でしょうか?
-
ASPページを開くとユーザー名と...
-
WebサーバとApplicationサーバ...
-
htmlでのリンクの表示に関する...
おすすめ情報