社内SEもあなたも勉強不足。 基礎的なこと、単純なことかもしれませんが質問させていただきしまた。 はsrc="/xxx/xxx.png"、 周りはみんな「敵」 コピーされるのが嫌ならそもそもネット上に公開しない、特定の人物やドメインにのみ許可するなどの対応となるでしょう。 確認されている通り、開発環境と本番環境で異なる為です。 具体的に言うと、開発環境にWebサーバを立てていない場合。 これは、/ から始めるとルートディレクトリを基準にアクセスしてくれるというものである. 気を取り直して、ご指導有難うございました。, t_ohta様、早々の御回答ありがとうございます。 ASP.net Framework3.5 C# で開発しております。(IIS Express), 上記A.cs内でB.xmlのパス指定をしたいのですが、CurrentFolderがIISフォルダになってしまい、, ASP.NET Web アプリと同じソリューション内に別のプロジェクトとして ClassLibrary1 という名前のプロジェクトを作成。その直下にクラスライブラリ (A.cs) と .xml ファイル (B.xml) の両方を配置(フォルダを分けると名前空間の扱いが面倒なので)という形です。, .xml ファイルと .aspx ファイルは以下のチュートリアルからそのまま借用。, チュートリアル : ASP.NET トレースと System.Diagnostics トレースの統合 と、焦りました。 ※因みにSSLのデバック環境だと、「セキュリティに問題があります」などのエラーが出るのは仕方の無いことでしょうか? でも じゃあ、説明してみろ! といわれたら、言葉に詰まります。 テスト時でも、納品しても 変更しなくて良いとのこと!? という相対パスを有効にする セキュリティ上の理由により、デフォルトでは相対パスで親フォルダへのアクセスを禁じていますが、そもそも iis はイントラネットでしょうし、設定しておいたほうが良い環境がほとんどでしょう。 site1-local という url をサイト作成時に設定しましたが、site1-local という url が localhost(=127.0.0.1)を示す設定が必要です。 (こんな回答でいいのか???) ・・・すみません、愚痴ってしまいました。 http://hoge.com/img/hoge.png にアクセスする際に. 個人的には、全て作り変えたほうがいいと思ってるしだいです。 などにすればよいのでしょうか? (ルート相対パス・・・初めて知った無知者です) 自分で確認しろ!と言われそうですが、なにぶん テスト環境はdebug用SSL環境ですし IIS の設定. 最近ルート相対パスなるものを知った。衝撃的だった。自分の無知さに対して. それこそ詳細仕様も把握できないまま一週間で作り上げ、作り上げてしまえばそこのところはもうノータッチ、異常系bugが出たら大騒ぎ?! 安心しました! それでも限られた時間内で仕上げなければならず、突貫工事のような毎日。 特定の URL のディレクトリを、特定の相対パスあるいは (相対的ではない) URL へリダイレクトしたい場合は、web.config にて httpRedirect を設定します。 ここでは IIS マネージャからの設定を示します。(web.config については最後にちょっと書きます) 具体的には, http://keicode.com/old.html から http://keicode.com/new.html へ変わったとします。, このときに、古い URL (この場合 http://keicode.com/old.html ) へアクセスを試みたユーザーに対して、 ミラーサイトが作成されるという懸念については、クライアントに全ソースをダウンロードしている以上、防ぎようがありません。 http://hoge.com がルートディレクトリだった場合、 WEBアプリを開発しています。 (やっとSSLのdebug環境ができたばっかりなんです) action="/hogo.exe" action="hogo.exe" フォルダが増えると「../」が増えてややこしくなってくるし, 簡単に階層を変えれなくなってしまう. > 私も最初は相対パスで記述しており、途中でルート相対パスに変更してみたのですが、ローカルでは正> しくリンクしない事に気が付きました。 ディレクトリ構成は同じと思います。 おっしゃっていることはだいたいわかります。 他の人に説明できるよう、勉強します!, ORUKA1951 さん、ありがとうございます。 よく知らないまま、いろんな掲示板でお世話になりながら http://surferonwww.info/BlogEngine/post/2012/05/19/Web-custom-control-with-embedded-resources.aspx. 大変詳しく正確な回答、有難うございました。 いざ、修正しますと結構、力仕事的にあることがわかりました。 トップページは表示できています。 Send edit request. 特定の URL のディレクトリを、特定の相対パスあるいは (相対的ではない) URL へリダイレクトしたい場合は、web.config にて httpRedirect を設定します。 ここでは IIS マネージャからの設定を示します。(web.config については最後にちょっと書きます) あっ、いろいろな事情があり、社内SEはいません。 全体のサイトを通して使用する css ファイルや js ファイル, 画像などは ルートディレクトリ直下に作ったフォルダ内に入れて管理することができる. I'm a Game Programmer and Frontend Engineer passionate about programming education. プログラムを走らせる為、どの道Webサーバを立てないと動かせないようなサイトなら、まぁどっちでも好みの問題で、という次元が少なからずあると思います。 今まで何度か質問させていただき、それほど大きな変更はないと知り安堵していたのですが、 「絶対パス」、「相対パス」、「ルート相対パス」のどれがいいでしょうか。, あくまでHTMLだけで作った場合の質問なのか悩んでしまいましたが、追記します。 ディレクトリ構成は全てルート直下で動いています。 考えるのは、コピーを防ぐ方法よりは、コピーされた後の対応になると思います。 Improve article. 面目ない。。。 https://msdn.microsoft.com/ja-jp/library/b0ectfxd(v=vs.100).aspx, クラスライブラリ(上のチュートリアルで言うと AuthorClass ビジネスオブジェクト)は埋め込みリソースを読むように修正して以下の通りです。ブラウザから URL 参照して取得するわけではないので、先に紹介した記事「リソース埋め込みカスタムコントロール」に書いてあるような WebResource 関係の設定は不要です。, 埋め込む方法を把握できていないのに、読み出し方だけを質問しても答えが得られるわけがありません。, コンパイル時に埋め込む方法ですが、プロジェクトにリソースファイル(拡張子.resx)を追加してください。リソースファイルには文字列以外にもファイルをリソースとして埋め込む機能が提供されています。, こうすると自動的に.Designer.csが生成され、各リソースにアクセスできるプロパティが用意されます。実行時にはそのプロパティを読み込むことでアクセスできます。, リソースの追加と編集が参考になります。SurferOnWwwさんの提示されている方法も内部的には同様の処理をしていますが、リソースファイルを用いた方が管理が楽になります。, クラスライブラリはビルド時にdllファイル化されます。(xmlはテキストファイルとしては存在しない状態です。), 実行時にASPからDLL(A.cs内処理(X))を呼び出し、その処理(X)でB.xmlを参照(読込)したいです。, 先の質問者さんのスレッドの話から続いているとすると、その ASP というのは、ASP.NET Web Forms アプリですよね?(クラシック ASP ではなくて・・・用語はきちんと使わないと掲示板では話が通じにくくなりますのでご注意ください)。, A.cs というのがどういうクラスライブラリなのか分かりませんが、何にせよそれは ASP.NET Web アプリが使うクラスライブラリですよね。, そして、B.xml というのは ASP.NET Web アプリがデータソースとして使うのですよね(B.xml を読んだり更新したりするのは A.cs の中のコードだとしても)。, そうであれば、データソースは ASP.NET Web Forms アプリのルート直下の App_Data フォルダに入れるのが普通だと思います。, 今の質問者さんの案で考えて回答しても、最終的には App_Data に置くという話になると二度手間ですのでお聞きしています。, B.xml を App_Data フォルダに置けば、A.cs のコードでは以下のように物理パスを取得できます。, クラスライブラリはプロジェクトプロパティのプロジェクト依存関係で設定しているライブラリを指しております。, 現状、B.xmlをApp_Dataフォルダに配置することも可能なのですが、このクラスライブラリを将来的に今は必要でない, 別プロジェクトからも参照できるような形にできればと思いまして、ライブラリ内に配置できればと考えました。, (また、クラスライブラリはソリューションビルド時にdllになりますのが、xmlもバイナリ化されるものなのでしょうか?), DLL内に埋め込まれたXMLファイルの実行時の読み込み方が知りたい、が質問内容ですね?, しかし、実行時に埋め込まれたXMLファイルを読み込むには、その前にコンパイル時にXMLファイルを埋め込む必要があります。, DLL内にXMLファイルを埋め込む方法は把握できているのでしょうか? そこが把握できていない、つまりご自身が何を必要としているかをそもそも把握できていないということはありませんか?, A.cs と B.xml の ASP.NET Web アプリにおける位置づけは何なのですか? それを明確にしてくれないと話が通じないですよ。, 以下のどちらかだと想像してますが、どちらなのでしょう? (どちらにも該当しない場合は、質問者さんが考えている関係を詳しく書いてください), (1) 三層構造、すなわち、プレゼンテーション層 / ビジネス層 / データー層を考えていて、ASP.NET Web アプリ(プレゼンテーション層)が A.cs(ビジネス層)経由で B.xml(データ層)を読んだり更新したりする。, (2) カスタムコントロールとそれ専用の埋め込み画像やスクリプトのような関係(前者が A.cs、後者が B.xml)で、ASP.NET Web アプリからは A.cs しか見えない。B.xml を更新するようなこともない。, もし、(1) であれば、先の私のレスで書いたとおり B.xml は ASP.NET Web アプリのルート直下の App_Data フォルダに置く以外の選択肢ないと思います, もし、(2) であれば、B.xml をリソースとして埋め込むことができると思います。カスタムコントロールの例ですが、以下の記事が参考になりませんか。(xml ファイルは未検証ですが), リソース埋め込みカスタムコントロール js、cssなど、src=関連は全てsrc="/・・・" サーバーがクライアントに対して、異なる URL アクセスするよう指示することをさします。, 例えば、HTML ファイルのファイル名を old.html から new.html へ変更して、そのページの URL が 現在作成されているものがHTMLだけで構成されるならば、環境によっては、ルート相対パスは向かないと思います。 debugなので localhost で。 これでいいのか、毎回悩んでいるのも事実です。 あるときふと思った, 大規模なサイトはディレクトリ構造をどうしてるんだろう?  SRC="/hoge.png" 最近ルート相対パスなるものを知った。 衝撃的だった。自分の無知さに対して. 動く環境に合わせて、直接ファイルを開けてURLを書き換えないといけないです! おっしゃるとおりです。 ライブラリプロジェクト内の相対パス.Net Framework > ASP.NET. 下記の設定例ではポート番号をいちいち指定してます。スクリーンショットを見るときはその辺を適当に読み替えてください。, 下側の絶対パスで指定する ("Redirect all requests to exact destination (instead of relative to destination)") というチェックを指定しないと、入力した URL は相対パスとして認識されます。, 例えば、上記をチェックしないで相対パスとして認識した場合は、次のような動作になります。, 次のようにルート "/" を要求した場合・・・ ルート相対パスも相対パスも、参照するパスがやたら長ったらしいと煩わしい。 今回初めてシステムをSSL対応で納品することになりました。 >ディレクトリ構成を利用者・開発者で同じ環境を用意すれば良いこと。 そして、いろいろな事情もあり、周りには教えてくれる人は誰もいません、と言いますか ※あくまでサーバを通さないとブラウザはルートディレクトリを認識してくれないので Apache などを使わずローカルで開発している場合, ルート相対パスは使えないのでご注意を. (表示データを取得する為に)マスタデータ読込(B.xml)という流れですので、, ↓のなちゃさんの説明を元に考えると、(1)と記載したことは間違いでして、(2)が正だと改めました。, Web アプリ開始トリガ(Z.aspx.cs) → 表示用データ作成(ライブラリA.cs内メソッド呼び出し) →, A.cs内メソッドで、Web > 私も最初は相対パスで記述しており、途中でルート相対パスに変更してみたのですが、ローカルでは正> しくリンクしない事に気が付きました。 302 (Found)、あるいは 307 (Temporary Redirect) です。それぞれの意味(とひとことメッセージ)は次のとおりです。, 特定の URL のディレクトリを、特定の相対パスあるいは (相対的ではない) URL へリダイレクトしたい場合は、web.config にて httpRedirect を設定します。 http://hoge.com/programming/c/opengl/index.html から かといって絶対パスにしちゃうとドメインやフォルダ名に依存しすぎてしまう. iis6を利用している環境で、サブフォルダのaspに画面遷移した際に、500番のページが表示された場合は以下の項目をチェックする。1. 確認されている通り、開発環境と本番環境で異なる為です。 Fig. >http も https も通信経路が暗号化されるだけで内部処理は変わりません。テスト用はhttp://local.hostで試せばよいだけです。 ログファイルだけは別ディレクトリに保存。 暖かいご指導、感謝いたします。 だけでいいのですね! その環境を作らないと、作ったソースを丸々本番サーバでアップロードできません。 勉強不足も承知しています。 相対パスと「..」 (IIS 4.0 および5.0 で同じ結果が得られる) カレントの仮想ディレクトリは/test であるとする。すなわち,Server.MapPath メソッド呼び出しを行うASPプログラムは物理ディレクトリc:\winnt\temp\test に置かれているものとする。 ... 現在のディレクトリといった相対パスを含めた9個のパスが出てきます。 ... mod_perl では PerlSwitches というオプションがあって、Apacheの設定ファイルで @INC にパスを加えることができます。 「新しい URL は http://keicode.com/new.html ですよ」 と教えてあげたら親切です。, このように新しい URL を教えてあげて、ブラウザが処理を中断することなく、 今回、後任者もできそうで、いろいろ統一化・共通化に向けて動こうとしていますが 他者さんの開発したシステムも参考にさせていただきながら、これも掲示板などで 納期は迫っているし、 皆さんのアドバイスで少しでも正確な(?)方法で動ければ、、、と
のactionも action="/cgi.exe" WEBアプリを開発しています。(windows・IISです)今回初めてシステムをSSL対応で納品することになりました。今まで何度か質問させていただき、それほど大きな変更はないと知り安堵していたのですが、いざ、修正しますと結構、力仕事的に どれだけネストした階層からでも /index.html と書けば ホームページへのリンクにつながる。 階層動かし放題, 名前変え放題である(あまり関心しないが). 教えていただきました。 [スタート]ボタンをクリックして、[管理ツール]をポイントし、[インターネットインフォメーションサービス(iis)マネージャ]をクリックします。 string folder = (string)AppDomain.CurrentDomain.GetData("DataDirectory"); この方法だと、ASP.NETでは上記App_Data、通常のWindowsアプリではexeと同じ場所、ClickOnceアプリではデータディレクトリというように、自動でパスを取得できますので、アプリのタイプによって取得方法を変える必要がなくなります。(System.Webの参照設定なども不要), DLL内にXMLファイルを埋め込む方法は把握できていません。(プロジェクトに配置すればdllに埋め込まれると考えておりました。), 先の私のレスの (1) は「 三層構造、すなわち、プレゼンテーション層 / ビジネス層 / データー層を考えていて、ASP.NET Web アプリ(プレゼンテーション層)が A.cs(ビジネス層)経由で B.xml(データ層)を読んだり更新したりする。」です。, 「DLL内にXMLファイルを埋め込む」というのは、(1) ではなくて (2) ではないですか?, やりたいことが (2) でよければ、その具体的な方法を上の私のレスに書きましたが、読んでいただけたでしょうか? それもやりたいことと違う場合は、具体的にどこが違うか書いてください。, B.xmlが具体的にどういう内容で、クラスライブラリからどう利用するのか、どういう目的で利用するのかまず明確にする方がいいと思いますよ。, たとえば、ライブラリの動作設定とかに近い内容なら、(1)でも(2)でもなくて、設定情報の扱いで、構成ファイルから読み込む方が適切でしょうし、もしどうしてもB.xmlにしなければならない理由があるなら、設定を変更する可能性があるなら(1)になりますし、あくまでdll埋め込みで変更は必要ない、単なるDLLが動作するための固定データであれば(2)になるでしょうし。, B.xmlはマスタ(表示データを保持)の位置付けで内容変更は不要で、A.csから参照だけされるファイルです。, 実際のフローとしては、Web アプリ開始トリガ → 表示用データ作成(ライブラリA.cs内メソッド呼び出し) →, ライブラリA.cs内メソッド → Crown3 Lesson2 Section3 11, ベンツ ディーゼル 修理 4, バッファロー Ipアドレス 取得できない 4, 猫 腎臓病 太る 4, 千葉雄大 ファンクラブ 退会 12, ナイキ 東京 限定 6, Tales Of Destiny Director's Cut Iso 14, Wma Mp3 変換 Mac Switch 4, 卒論 間に合わない 理系 6, Vba Findnext エラー1004 23, Excel 行番号表示 おかしい 10, ガーミン スント どっち 51, Apex グリッチ 高所 52, 5000万円 運用 生活 8, 生理中 熱 38 9, 小学生 国語 文法 教え方 4, Steam オーバーレイ スクリーンショット 6, 三菱電機 ビデオデッキ 修理 4, スカイリム コンソール 蘇生 15, インスタ 001y_k_ 母親 5, X570 Pro4 ドライバ 12, ジムニー Jb23 異音 8, 虫除け ハーブ 植えるだけ 12, 八女 郡 羽犬塚 町 16, エアマックス95 ウィメンズ サイズ感 4, セレナ アラウンド ビュー モニター ナビ オートバックス 4, 車 全塗装 東京 7, B450 Steel Legend 消費電力 5, 実況 配信 トーク 18, 結婚式 招待状 雨 4, 彼女 話さない つまらない 4, Gta5 放置ジョブ 無操作 8, Minecraft ドラゴンの 孵化 の させ 方 13, Jin 人気記事ランキング 表示されない 6, バイク 荷台 自作 6, ダイソー スカーフ 2020 17, Albanox A型 誕生日 7, ミニバス オフィシャル 2019 6, コナン ベルモット 登場回 7, " />

XAMPPでもApache単体でもいいから、インストールした上でDocumentRoot配下で開発を行っていれば、恐らく支障ありませんよ。 今までは 現在作成されているものがHTMLだけで構成されるならば、環境によっては、ルート相対パスは向かないと思います。 推奨されないという「サイトの続行」でテストしようとしていますが。 updated at 2014-04-15. ここでは IIS マネージャからの設定を示します。(web.config については最後にちょっと書きます), が、先にお断りをひとつ。私の IIS は 80 番ポートではなく、 8889 番ポートを使ってますので、 開発環境におけるルート相対パスは、Webサーバを立て...続きを読む, ※各種外部サービスのアカウントをお持ちの方はこちらから簡単に登録できます。 お客様の許可なしに外部サービスに投稿することはございませんのでご安心ください。, タブレットについて タブレットで、プニプニというゲームアプリをインストールしたのですが、「ルート化し, 私は現在、機械メーカーの設計・開発職をしています。 ソフトウェア開発の勉強をしていくうちにSEという, http://www.adobe.com/support/dreamweaver/content …, http://helpx.adobe.com/jp/dreamweaver/using/link …, http://helpx.adobe.com/jp/dreamweaver/kb/233307. 納品時に、またお客様の環境に合わせた修正をしなければならない??? iis6を利用している環境で、サブフォルダのaspに画面遷移した際に、500番のページが表示された場合は以下の項目をチェックする。1. >今回を契機に、サイトのディレクトリ構成を、依頼者と意識統一したほうが良いと思います。それを行うだけで、後継者の作業は楽になります。 もともと HTTP/1.0 では Temporary Moved でした。, URI は一時的に新しい URI へと変更になりました、という意味。どこへ変わったか、という情報は Location ヘッダーに記載される。HTTP/1.1 から。. アプリ(Z.aspx.cs)で呼び出し可能なメソッド(例.GetLocalResourceObject())を, 実行し、Z.aspx.csで呼び出した時と結果を取得することは可能でしょうか?(概要を下記に書きました。), 既存フローに修正を加えている関係で、そもそもの構造に問題があるかもしれませんが、A.csで実行したいメソッドが, ありますので、質問しました。閲覧上、不適切でしたら、一旦この質問を取り消すことに致します。, x = GetLocalResourceObject(・・・);    // ←呼び出し元Z.aspx.csでこのメソッドを実行した時と同じ結果を取得したい。現在はエラーで呼び出せません。, まず、基本として、ライブラリは完全にWebアプリ専用で、Webの仕組みに依存するものだ、という前提でいいんですよね?, Web関連の情報へのアクセスは、基本的にHttpContextというオブジェクトを通じて提供されます。, System.Web.HttpContext.Currentで現在処理中のリクエストに紐づく情報が取得できますので、ここからいろんな機能にアクセス可能です。, ただし、HttpContexは完全にWebアプリのリクエストの処理スレッドに依存しますので、たとえばスレッドを別に作成したりスレッドプールで実行するような処理では使えない、Webリクエスト以外の処理でももちろん使えない、などの制限があります。, また、リクエスト依存の処理であればたいていHttpContextから直に扱えますが、個別ページなどに依存する処理だと、ページのURLの取得が必要だったりなど、こまごまと工夫などが必要になります。, たとえばGetLocalResourceObjectだと、対象のページの仮想パスが必要になります(現在のリクエストのURLや、ハンドラの情報などから取得はできますが)。, 不適切とは言えないまでも、好ましいことではないです。表題や最初の質問と質問内容が変わってきた場合は、新に別のスレッドを立てて質問していただくようお願いします。, このフォーラムは開発者同士の情報交換の場所ということを考えていただけれると、そうすることが適切であることは理解いただけると思います。(例えば、検索などでここにたどり着いた人のことを考えてください), このスレッドの質問の回答は得られたようですので、質問者さんの役に立った回答にチェックマークをつけて(複数可)クローズしてください。, 質問の意図がわかりません。B.xmlを参照するのはコンパイル時ですか? それとも実行時ですか? 実行時に参照するのであれば、実行時のファイル構造を示さなければ答えようがないわけですが…。, ライブラリが呼び出し元に依存するのもおかしな話です。必要な情報は引数として呼び出し元から受け取るなど、依存関係を無くすべきです。, からも参照できるような形にできればと思いまして、ライブラリ内に配置できればと考えました。, Z.aspx.csで呼び出した時と結果を取得することは可能でしょうか?(概要を下記に書きました。), x = GetLocalResourceObject(・・・);    // ←呼び出し元, Z.aspx.csでこのメソッドを実行した時と同じ結果を取得したい。現在はエラーで呼び出せません。, https://msdn.microsoft.com/ja-jp/library/b0ectfxd(v=vs.100).aspx, http://surferonwww.info/BlogEngine/post/2012/05/19/Web-custom-control-with-embedded-resources.aspx. 正しい用語で説明できない。。。 相対パスと「..」 (IIS 4.0 および5.0 で同じ結果が得られる) カレントの仮想ディレクトリは/test であるとする。すなわち,Server.MapPath メソッド呼び出しを行うASPプログラムは物理ディレクトリc:\winnt\temp\test に置かれているものとする。 つまり、考えるだけ無駄です。 サイトの物理パスと同じ物理パスを持つルートアプリケーションが登録されているのがわかります。 ブラウザでアクセスしてみる. しかしそれも、動的ページ(PHPやらJavaやら使って)なら、クライアントに見えるのは描画が完了したページだけですから、丸ごとクローンというわけにはいかないでしょうね。, あくまでHTMLだけで作った場合の質問なのか悩んでしまいましたが、追記します。 (windows・IISです) すみません、自分のコーディングレベルで書いてしまいました。 次のように、上ではリダイレクトされていたサブディレクトリに対して HTTP リクエストを投げても、リダイレクトされていないことがわかります。, さらに HTTP ステータスコードも、UI からは三種類 301, 302 (デフォルト), 307 が選べます。, 上表に書きましたが、URL が完全に変わる場合は 301 を選ぶと SEO 的にも良いです。, 上記のように IIS マネージャの UI を用いて リダイレクトを設定すればよいですが、web.config では次のように設定できます。, exactDestination は絶対パスでの指定の場合 true とし、相対パスのとして destination を解釈する場合は false とします。, リダイレクトに 301 を返したいときは、httpResponseStatus を "Permanent" とします。  SRC="hoge.png" 手順 1 インターネット インフォメーション サービス (IIS) マネージャー を起動する 2 対象となるサイトを選択 3 仮想ディレクトリの設定画面へ 4 仮想ディレクトリを設定する 「エイリアス」に、どん … ありがとうございました。, think49さん、 どちらでも走りますので。 で、調べていましたら「ルート相対パス」にしておけば DBをまだ作成していないので、これから環境を整えます。 指定した ディレクトリを Location ヘッダに指定して応答します。, で、さらにリダイレクトされた先でも、さらにリダイレクトされて /redirect-test1/redirect-test1/ なんてところにリダイレクトされちゃってます。, さらに、サブディレクトリに設定を反映させないためには、以下の "not subdirectories" をチェックします。, これをチェックしておけば、サブディレクトリではリダイレクトの設定が有効になりません。 [スタート]ボタンをクリックして、[管理ツール]をポイントし、[インターネットインフォメーションサービス(iis)マネージャ]をクリックします。 http://hoge.com を基準としてファイルにアクセスできるということである. >社内SEもあなたも勉強不足。 基礎的なこと、単純なことかもしれませんが質問させていただきしまた。 はsrc="/xxx/xxx.png"、 周りはみんな「敵」 コピーされるのが嫌ならそもそもネット上に公開しない、特定の人物やドメインにのみ許可するなどの対応となるでしょう。 確認されている通り、開発環境と本番環境で異なる為です。 具体的に言うと、開発環境にWebサーバを立てていない場合。 これは、/ から始めるとルートディレクトリを基準にアクセスしてくれるというものである. 気を取り直して、ご指導有難うございました。, t_ohta様、早々の御回答ありがとうございます。 ASP.net Framework3.5 C# で開発しております。(IIS Express), 上記A.cs内でB.xmlのパス指定をしたいのですが、CurrentFolderがIISフォルダになってしまい、, ASP.NET Web アプリと同じソリューション内に別のプロジェクトとして ClassLibrary1 という名前のプロジェクトを作成。その直下にクラスライブラリ (A.cs) と .xml ファイル (B.xml) の両方を配置(フォルダを分けると名前空間の扱いが面倒なので)という形です。, .xml ファイルと .aspx ファイルは以下のチュートリアルからそのまま借用。, チュートリアル : ASP.NET トレースと System.Diagnostics トレースの統合 と、焦りました。 ※因みにSSLのデバック環境だと、「セキュリティに問題があります」などのエラーが出るのは仕方の無いことでしょうか? でも じゃあ、説明してみろ! といわれたら、言葉に詰まります。 テスト時でも、納品しても 変更しなくて良いとのこと!? という相対パスを有効にする セキュリティ上の理由により、デフォルトでは相対パスで親フォルダへのアクセスを禁じていますが、そもそも iis はイントラネットでしょうし、設定しておいたほうが良い環境がほとんどでしょう。 site1-local という url をサイト作成時に設定しましたが、site1-local という url が localhost(=127.0.0.1)を示す設定が必要です。 (こんな回答でいいのか???) ・・・すみません、愚痴ってしまいました。 http://hoge.com/img/hoge.png にアクセスする際に. 個人的には、全て作り変えたほうがいいと思ってるしだいです。 などにすればよいのでしょうか? (ルート相対パス・・・初めて知った無知者です) 自分で確認しろ!と言われそうですが、なにぶん テスト環境はdebug用SSL環境ですし IIS の設定. 最近ルート相対パスなるものを知った。衝撃的だった。自分の無知さに対して. それこそ詳細仕様も把握できないまま一週間で作り上げ、作り上げてしまえばそこのところはもうノータッチ、異常系bugが出たら大騒ぎ?! 安心しました! それでも限られた時間内で仕上げなければならず、突貫工事のような毎日。 特定の URL のディレクトリを、特定の相対パスあるいは (相対的ではない) URL へリダイレクトしたい場合は、web.config にて httpRedirect を設定します。 ここでは IIS マネージャからの設定を示します。(web.config については最後にちょっと書きます) 具体的には, http://keicode.com/old.html から http://keicode.com/new.html へ変わったとします。, このときに、古い URL (この場合 http://keicode.com/old.html ) へアクセスを試みたユーザーに対して、 ミラーサイトが作成されるという懸念については、クライアントに全ソースをダウンロードしている以上、防ぎようがありません。 http://hoge.com がルートディレクトリだった場合、 WEBアプリを開発しています。 (やっとSSLのdebug環境ができたばっかりなんです) action="/hogo.exe" action="hogo.exe" フォルダが増えると「../」が増えてややこしくなってくるし, 簡単に階層を変えれなくなってしまう. > 私も最初は相対パスで記述しており、途中でルート相対パスに変更してみたのですが、ローカルでは正> しくリンクしない事に気が付きました。 ディレクトリ構成は同じと思います。 おっしゃっていることはだいたいわかります。 他の人に説明できるよう、勉強します!, ORUKA1951 さん、ありがとうございます。 よく知らないまま、いろんな掲示板でお世話になりながら http://surferonwww.info/BlogEngine/post/2012/05/19/Web-custom-control-with-embedded-resources.aspx. 大変詳しく正確な回答、有難うございました。 いざ、修正しますと結構、力仕事的にあることがわかりました。 トップページは表示できています。 Send edit request. 特定の URL のディレクトリを、特定の相対パスあるいは (相対的ではない) URL へリダイレクトしたい場合は、web.config にて httpRedirect を設定します。 ここでは IIS マネージャからの設定を示します。(web.config については最後にちょっと書きます) あっ、いろいろな事情があり、社内SEはいません。 全体のサイトを通して使用する css ファイルや js ファイル, 画像などは ルートディレクトリ直下に作ったフォルダ内に入れて管理することができる. I'm a Game Programmer and Frontend Engineer passionate about programming education. プログラムを走らせる為、どの道Webサーバを立てないと動かせないようなサイトなら、まぁどっちでも好みの問題で、という次元が少なからずあると思います。 今まで何度か質問させていただき、それほど大きな変更はないと知り安堵していたのですが、 「絶対パス」、「相対パス」、「ルート相対パス」のどれがいいでしょうか。, あくまでHTMLだけで作った場合の質問なのか悩んでしまいましたが、追記します。 ディレクトリ構成は全てルート直下で動いています。 考えるのは、コピーを防ぐ方法よりは、コピーされた後の対応になると思います。 Improve article. 面目ない。。。 https://msdn.microsoft.com/ja-jp/library/b0ectfxd(v=vs.100).aspx, クラスライブラリ(上のチュートリアルで言うと AuthorClass ビジネスオブジェクト)は埋め込みリソースを読むように修正して以下の通りです。ブラウザから URL 参照して取得するわけではないので、先に紹介した記事「リソース埋め込みカスタムコントロール」に書いてあるような WebResource 関係の設定は不要です。, 埋め込む方法を把握できていないのに、読み出し方だけを質問しても答えが得られるわけがありません。, コンパイル時に埋め込む方法ですが、プロジェクトにリソースファイル(拡張子.resx)を追加してください。リソースファイルには文字列以外にもファイルをリソースとして埋め込む機能が提供されています。, こうすると自動的に.Designer.csが生成され、各リソースにアクセスできるプロパティが用意されます。実行時にはそのプロパティを読み込むことでアクセスできます。, リソースの追加と編集が参考になります。SurferOnWwwさんの提示されている方法も内部的には同様の処理をしていますが、リソースファイルを用いた方が管理が楽になります。, クラスライブラリはビルド時にdllファイル化されます。(xmlはテキストファイルとしては存在しない状態です。), 実行時にASPからDLL(A.cs内処理(X))を呼び出し、その処理(X)でB.xmlを参照(読込)したいです。, 先の質問者さんのスレッドの話から続いているとすると、その ASP というのは、ASP.NET Web Forms アプリですよね?(クラシック ASP ではなくて・・・用語はきちんと使わないと掲示板では話が通じにくくなりますのでご注意ください)。, A.cs というのがどういうクラスライブラリなのか分かりませんが、何にせよそれは ASP.NET Web アプリが使うクラスライブラリですよね。, そして、B.xml というのは ASP.NET Web アプリがデータソースとして使うのですよね(B.xml を読んだり更新したりするのは A.cs の中のコードだとしても)。, そうであれば、データソースは ASP.NET Web Forms アプリのルート直下の App_Data フォルダに入れるのが普通だと思います。, 今の質問者さんの案で考えて回答しても、最終的には App_Data に置くという話になると二度手間ですのでお聞きしています。, B.xml を App_Data フォルダに置けば、A.cs のコードでは以下のように物理パスを取得できます。, クラスライブラリはプロジェクトプロパティのプロジェクト依存関係で設定しているライブラリを指しております。, 現状、B.xmlをApp_Dataフォルダに配置することも可能なのですが、このクラスライブラリを将来的に今は必要でない, 別プロジェクトからも参照できるような形にできればと思いまして、ライブラリ内に配置できればと考えました。, (また、クラスライブラリはソリューションビルド時にdllになりますのが、xmlもバイナリ化されるものなのでしょうか?), DLL内に埋め込まれたXMLファイルの実行時の読み込み方が知りたい、が質問内容ですね?, しかし、実行時に埋め込まれたXMLファイルを読み込むには、その前にコンパイル時にXMLファイルを埋め込む必要があります。, DLL内にXMLファイルを埋め込む方法は把握できているのでしょうか? そこが把握できていない、つまりご自身が何を必要としているかをそもそも把握できていないということはありませんか?, A.cs と B.xml の ASP.NET Web アプリにおける位置づけは何なのですか? それを明確にしてくれないと話が通じないですよ。, 以下のどちらかだと想像してますが、どちらなのでしょう? (どちらにも該当しない場合は、質問者さんが考えている関係を詳しく書いてください), (1) 三層構造、すなわち、プレゼンテーション層 / ビジネス層 / データー層を考えていて、ASP.NET Web アプリ(プレゼンテーション層)が A.cs(ビジネス層)経由で B.xml(データ層)を読んだり更新したりする。, (2) カスタムコントロールとそれ専用の埋め込み画像やスクリプトのような関係(前者が A.cs、後者が B.xml)で、ASP.NET Web アプリからは A.cs しか見えない。B.xml を更新するようなこともない。, もし、(1) であれば、先の私のレスで書いたとおり B.xml は ASP.NET Web アプリのルート直下の App_Data フォルダに置く以外の選択肢ないと思います, もし、(2) であれば、B.xml をリソースとして埋め込むことができると思います。カスタムコントロールの例ですが、以下の記事が参考になりませんか。(xml ファイルは未検証ですが), リソース埋め込みカスタムコントロール js、cssなど、src=関連は全てsrc="/・・・" サーバーがクライアントに対して、異なる URL アクセスするよう指示することをさします。, 例えば、HTML ファイルのファイル名を old.html から new.html へ変更して、そのページの URL が 現在作成されているものがHTMLだけで構成されるならば、環境によっては、ルート相対パスは向かないと思います。 debugなので localhost で。 これでいいのか、毎回悩んでいるのも事実です。 あるときふと思った, 大規模なサイトはディレクトリ構造をどうしてるんだろう?  SRC="/hoge.png" 最近ルート相対パスなるものを知った。 衝撃的だった。自分の無知さに対して. 動く環境に合わせて、直接ファイルを開けてURLを書き換えないといけないです! おっしゃるとおりです。 ライブラリプロジェクト内の相対パス.Net Framework > ASP.NET. 下記の設定例ではポート番号をいちいち指定してます。スクリーンショットを見るときはその辺を適当に読み替えてください。, 下側の絶対パスで指定する ("Redirect all requests to exact destination (instead of relative to destination)") というチェックを指定しないと、入力した URL は相対パスとして認識されます。, 例えば、上記をチェックしないで相対パスとして認識した場合は、次のような動作になります。, 次のようにルート "/" を要求した場合・・・ ルート相対パスも相対パスも、参照するパスがやたら長ったらしいと煩わしい。 今回初めてシステムをSSL対応で納品することになりました。 >ディレクトリ構成を利用者・開発者で同じ環境を用意すれば良いこと。 そして、いろいろな事情もあり、周りには教えてくれる人は誰もいません、と言いますか ※あくまでサーバを通さないとブラウザはルートディレクトリを認識してくれないので Apache などを使わずローカルで開発している場合, ルート相対パスは使えないのでご注意を. (表示データを取得する為に)マスタデータ読込(B.xml)という流れですので、, ↓のなちゃさんの説明を元に考えると、(1)と記載したことは間違いでして、(2)が正だと改めました。, Web アプリ開始トリガ(Z.aspx.cs) → 表示用データ作成(ライブラリA.cs内メソッド呼び出し) →, A.cs内メソッドで、Web > 私も最初は相対パスで記述しており、途中でルート相対パスに変更してみたのですが、ローカルでは正> しくリンクしない事に気が付きました。 302 (Found)、あるいは 307 (Temporary Redirect) です。それぞれの意味(とひとことメッセージ)は次のとおりです。, 特定の URL のディレクトリを、特定の相対パスあるいは (相対的ではない) URL へリダイレクトしたい場合は、web.config にて httpRedirect を設定します。 http://hoge.com/programming/c/opengl/index.html から かといって絶対パスにしちゃうとドメインやフォルダ名に依存しすぎてしまう. iis6を利用している環境で、サブフォルダのaspに画面遷移した際に、500番のページが表示された場合は以下の項目をチェックする。1. 確認されている通り、開発環境と本番環境で異なる為です。 Fig. >http も https も通信経路が暗号化されるだけで内部処理は変わりません。テスト用はhttp://local.hostで試せばよいだけです。 ログファイルだけは別ディレクトリに保存。 暖かいご指導、感謝いたします。 だけでいいのですね! その環境を作らないと、作ったソースを丸々本番サーバでアップロードできません。 勉強不足も承知しています。 相対パスと「..」 (IIS 4.0 および5.0 で同じ結果が得られる) カレントの仮想ディレクトリは/test であるとする。すなわち,Server.MapPath メソッド呼び出しを行うASPプログラムは物理ディレクトリc:\winnt\temp\test に置かれているものとする。 ... 現在のディレクトリといった相対パスを含めた9個のパスが出てきます。 ... mod_perl では PerlSwitches というオプションがあって、Apacheの設定ファイルで @INC にパスを加えることができます。 「新しい URL は http://keicode.com/new.html ですよ」 と教えてあげたら親切です。, このように新しい URL を教えてあげて、ブラウザが処理を中断することなく、 今回、後任者もできそうで、いろいろ統一化・共通化に向けて動こうとしていますが 他者さんの開発したシステムも参考にさせていただきながら、これも掲示板などで 納期は迫っているし、 皆さんのアドバイスで少しでも正確な(?)方法で動ければ、、、と

のactionも action="/cgi.exe" WEBアプリを開発しています。(windows・IISです)今回初めてシステムをSSL対応で納品することになりました。今まで何度か質問させていただき、それほど大きな変更はないと知り安堵していたのですが、いざ、修正しますと結構、力仕事的に どれだけネストした階層からでも /index.html と書けば ホームページへのリンクにつながる。 階層動かし放題, 名前変え放題である(あまり関心しないが). 教えていただきました。 [スタート]ボタンをクリックして、[管理ツール]をポイントし、[インターネットインフォメーションサービス(iis)マネージャ]をクリックします。 string folder = (string)AppDomain.CurrentDomain.GetData("DataDirectory"); この方法だと、ASP.NETでは上記App_Data、通常のWindowsアプリではexeと同じ場所、ClickOnceアプリではデータディレクトリというように、自動でパスを取得できますので、アプリのタイプによって取得方法を変える必要がなくなります。(System.Webの参照設定なども不要), DLL内にXMLファイルを埋め込む方法は把握できていません。(プロジェクトに配置すればdllに埋め込まれると考えておりました。), 先の私のレスの (1) は「 三層構造、すなわち、プレゼンテーション層 / ビジネス層 / データー層を考えていて、ASP.NET Web アプリ(プレゼンテーション層)が A.cs(ビジネス層)経由で B.xml(データ層)を読んだり更新したりする。」です。, 「DLL内にXMLファイルを埋め込む」というのは、(1) ではなくて (2) ではないですか?, やりたいことが (2) でよければ、その具体的な方法を上の私のレスに書きましたが、読んでいただけたでしょうか? それもやりたいことと違う場合は、具体的にどこが違うか書いてください。, B.xmlが具体的にどういう内容で、クラスライブラリからどう利用するのか、どういう目的で利用するのかまず明確にする方がいいと思いますよ。, たとえば、ライブラリの動作設定とかに近い内容なら、(1)でも(2)でもなくて、設定情報の扱いで、構成ファイルから読み込む方が適切でしょうし、もしどうしてもB.xmlにしなければならない理由があるなら、設定を変更する可能性があるなら(1)になりますし、あくまでdll埋め込みで変更は必要ない、単なるDLLが動作するための固定データであれば(2)になるでしょうし。, B.xmlはマスタ(表示データを保持)の位置付けで内容変更は不要で、A.csから参照だけされるファイルです。, 実際のフローとしては、Web アプリ開始トリガ → 表示用データ作成(ライブラリA.cs内メソッド呼び出し) →, ライブラリA.cs内メソッド →

Crown3 Lesson2 Section3 11, ベンツ ディーゼル 修理 4, バッファロー Ipアドレス 取得できない 4, 猫 腎臓病 太る 4, 千葉雄大 ファンクラブ 退会 12, ナイキ 東京 限定 6, Tales Of Destiny Director's Cut Iso 14, Wma Mp3 変換 Mac Switch 4, 卒論 間に合わない 理系 6, Vba Findnext エラー1004 23, Excel 行番号表示 おかしい 10, ガーミン スント どっち 51, Apex グリッチ 高所 52, 5000万円 運用 生活 8, 生理中 熱 38 9, 小学生 国語 文法 教え方 4, Steam オーバーレイ スクリーンショット 6, 三菱電機 ビデオデッキ 修理 4, スカイリム コンソール 蘇生 15, インスタ 001y_k_ 母親 5, X570 Pro4 ドライバ 12, ジムニー Jb23 異音 8, 虫除け ハーブ 植えるだけ 12, 八女 郡 羽犬塚 町 16, エアマックス95 ウィメンズ サイズ感 4, セレナ アラウンド ビュー モニター ナビ オートバックス 4, 車 全塗装 東京 7, B450 Steel Legend 消費電力 5, 実況 配信 トーク 18, 結婚式 招待状 雨 4, 彼女 話さない つまらない 4, Gta5 放置ジョブ 無操作 8, Minecraft ドラゴンの 孵化 の させ 方 13, Jin 人気記事ランキング 表示されない 6, バイク 荷台 自作 6, ダイソー スカーフ 2020 17, Albanox A型 誕生日 7, ミニバス オフィシャル 2019 6, コナン ベルモット 登場回 7,