問題タブ [base-tag]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Htmlベースタグ付きのURLハッシュ
window.location.hash
JavaScript アクションのリンクを使用する場合、通常は次のようにします。
そうすれば、ページが読み込まれる前に誰かがリンクをクリックしても、ひどいことは何も起こりません。
Html ベース タグ
私の現在のプロジェクトでは、これと同じ構成を使用していますが、基本タグを使用しています。
ただし、ページの URL が次の場合:
リンクをクリックすると、
それよりも
どうすればこれを修正できますか?
jsp - BASEHTMLタグを設定するためのJSP
Tomcatでjsp(実際にはgsp)を使用してアプリケーションを実行しています。すべてのURLは絶対です。つまり、すべてのhrefは「/」で始まります。例えば:
すべてのリクエストは、SYS.WEBSYSTEM_PREFIXというパラメータを受け取ります。このパラメータは、すべてのURLの前に付加する必要があります。
つまり、リクエストが
次に、上記のURLを次のように書き直す必要があります。
これは、HTMLタグを使用してグローバルに実行できると思います。
私は次のことを意図しました:
しかし、それは機能しませんでした。
したがって、質問は次のとおりです。
- この方法でこの問題に対処することは可能ですか?
- そうであれば。これを行う方法?
前もって感謝します。
ルイス
html - ベースタグがOperaとChromeで機能しているように見えるのに、FirefoxとIEでは機能していないのはなぜですか?
ベースタグを使用するサイトがあります。サイト内のすべてのリンクは相対的なものであり、すべてのリンクが適切なターゲットに向けられるように絶対的なhrefを設定しました。そしてそれはOperaとChromeで動作します。メニュー内のすべてのリンクが機能し、すべての画像とスタイルシートが見つかります。しかし、FirefoxとIEではそうではありません。そして、私はそれを取得しません!
OperaとChromeで問題なく閲覧できます。FireFoxとIEを使用しているときに、サブディレクトリにあるページの1つにアクセスすると、すべてが台無しになります。そのタグがどのように使用されるのかについて、私は何か誤解しましたか?または?
html - html タグの推奨事項は何ですか?
<base>
HTMLタグ が実際にどこでも使われているのを見たことがありません。その使用に落とし穴がありますか?それは私がそれを避けるべきであることを意味しますか?
現代の本番サイト(または他のサイト)で使用されていることに気づかなかったという事実は、私のサイトのリンクを単純化するための便利なアプリケーションがあるように見えますが、私はそれを嫌がります。
編集
ベースタグを数週間使用した後、ベースタグを使用することで、最初に表示されたものよりもはるかに望ましくないいくつかの主要な落とし穴を見つけることになりました。基本的に、ベースタグへの変更href='#topic'
とhref=''
ベースタグの下での変更は、デフォルトの動作とは非常に互換性がなく、デフォルトの動作からのこの変更により、制御できないサードパーティのライブラリの信頼性が非常に低くなる可能性があります。 予期しない方法で、デフォルトの動作に論理的に依存するためです。多くの場合、変更は微妙であり、大規模なコードベースを処理するときにすぐには明らかでない問題につながります。それ以来、私が経験した問題を以下に詳述する回答を作成しました。したがって、の広範な展開をコミットする前に、リンクの結果を自分でテストしてください。これ<base>
が私の新しいアドバイスです。
php - PHPでルートURLを取得する際の問題
作成したこのPHP関数でルートURLを取得するのに問題があります。私はそれを得ることができますが、サーバーごとに例外を作成する必要がありますが、代わりに1つの一貫した関数が必要です。修正方法を教えていただけますか?
Ubuntuワークステーションでは/var/ www / websiteの下にある特定のWebサイトのルートフォルダーに貼り付けますが、CentOSサーバーでは/ home / me/websiteの下にある可能性があります。私のワークステーションでは動作しますが、サーバーでは何らかの理由で別のバージョンを作成する必要があります。また、この機能も気に入らなかったように見える、さらに別のCentOSサーバー用に作成しなければならなかった別のバージョンがあります。この質問の最後に、私が最初にこれを行っている理由に関する背景情報もいくつかリストします。
ワークステーションバージョン
サーバーバージョン
サーバーバージョンでは、「mycentosserver.com」のif/thenステートメントに注意してください。これが違いです。
代替サーバーバージョン
バックグラウンド
通常はMVCフレームワークを使用しますが、私がいなくなったときに編集したいクライアントがいて、MVCが好きではなく、理解していません。彼は単純なPHPスキルを持っています。そのため、きれいなURLには次のような.htaccessを使用しており、URLの末尾にスラッシュを付けることもできます。
そして、_css、_js、_classesなどのサブフォルダーを作成しています-物事をかなり単純に保つようにしています。各ページの上部にはPHPのようなものがあり、HTMLの下部にはパラメータがあります。これは、スパゲッティコードを排除しようとする試みです。私はMVCを好みますが、特にこのルートURLの理由から、クライアントはこれを気に入っているようです。
ただし、.htaccess手法では、URLの末尾にスラッシュを追加するなど、HTMLに適切な相対パスがない場合があるため、HTMLでタグを使用して、相対パスで処理する必要があることに注意してください。パス。これが、getRootURL()関数が正しく機能する必要がある理由です。
php - file_get_contentsとベースタグの組み合わせ
ここに、ページ内に外部ページを表示するためのコードがあります(iframeに似ていますが、ソースを取得します)。
スクリプトを呼び出すと、すべて問題ありませんが、JavaScriptウィンドウを閉じることができず、コンテンツを表示できません...閉じるリンクが機能しません。何が問題ですか?これを解決する方法は?
更新:または、彼を右クリックすると「DIV」を非表示にする関数(JSまたはjquery)はありますか。ありがとう
html - 投稿後に base タグを無視する
Chrome ではRefused to execute a JavaScript script. Source code of script found within request.
、ドメイン名を含むデータを投稿した後にエラーが発生します (どちらのページにも JavaScript がないことに注意してください)。
直接アクセスするとbadpage2.html
画像が表示されますが、 経由badpage1.html
でアクセスすると画像は表示されません (base タグは機能しません)。
これは Chrome XSS 検出のバグですか? そうでない場合、どうすればこれをバイパスできますか?このフィルターをバイパスするためだけに、投稿されたデータをエンコードするのはばかげているようです。
編集:
私の場合、送信される投稿値は、ページのコンテンツの一部を更新することです。問題は、(この例のように) で使用されているドメイン名が含まれている場合に発生し、タグ<base>
を無効にする XSS 検出がトリガーされます。<base>
html - Railsは個別のhtmlドキュメントを読み込んでレンダリングします。html の読み込みにのみ適用する必要があります
Rails と jQuery モバイルを使用してモバイル Web アプリケーションを作成しています。HTTParty を使用して、実行時に Amazon AWS S3 からすべてのデータを読み取っています。
私がレンダリングする必要がある画面の 1 つは、S3 の同じフォルダーにホストされている画像を埋め込むことができ、通常は実際に埋め込まれているストレート html です。これが私の問題です。HTTParty を使用して html を簡単に取得し、html_safe オプションを使用してレンダリングできますが、画像は相対パス名であるためレンダリングされません。だから私はこれを回避する方法を見つけようとしてきました。
私は複数のことを試しましたが、主にhtmlタグを使用して画像が正しい場所を指すようにすることを検討していました。問題は、ベース タグを指定してページに他のリンクを設定できないことです。同じベースを使用し、リンクが正しい場所を指していないためです。そこで、フレームセットとフレームを調べて、ベースタグをフレームだけに向けました。これは正しく使用したと思いますが、役に立ちませんでした。使ってみましたがだめでした。
基本的に、S3から読み込んだhtml文字列に相対パス名のベースを設定できる方法を探していますが、それが明確でない場合。私はどんな提案にもオープンです!そして、読んでくれてありがとう、この非常に具体的な問題を解決してみてください!
ああ、もう 1 つ、Firebug でページを見ると、ヘッダーの最初の行は、href が現在のページに設定されたベース タグです。どこから来ているのかわかりませんが、レールがそこに投げ込んでいると思いますか? その下に別のベースタグをyield :intro_base? で配置したため、これが問題かどうかはわかりません。それとも、そこに競合があるので、それは私の問題の1つですか?
そして、コードがありました:私の「イントロ」メソッド:
私の「intro.html.erb」ファイル:
私のレイアウトのヘッダー:
html - プレーンな HTML で読み取るときに base タグをオーバーライドする
私は現在、Rails バックエンドを備えた jQM サイトに取り組んでいます。私たちが使用するいくつかのページは、AWS S3 からユーザーがアップロードした HTML を読み取り、Rails メソッド「html_safe」を使用して HTML をレンダリングしています。これはうまく機能しますが、html に相対パス名を持つファイルへの参照が含まれている場合、それらは S3 から取得する必要があるため、もちろん表示されません。
したがって、これらの相対パス名がアセットを取得できるように、base タグを変更する必要があります。Navmodel の jQM ドキュメントを読みましたが、JavaScript に詳しくなく、*BaseURL メソッドを使用して目標を達成できるかどうかわかりません。
誰でも可能な解決策がありますか?アドバイスをいただければ幸いです。ありがとう!
asp.net - BaseHREFを使用してASP.netのURLを修正するためのフォームを送信する
やむを得ない設計上の理由から、トップレベルのヘッドタグMasterPage
には次のようなものがあります。
問題が発生しているページのURLは次のとおりです。
これcontent page
で私はコントロールを持っています:
ただし、クリックすると、フォームが次の宛先に投稿されます。
store/checkout
本来あるべき姿ではないので、これは404をスローします。
フォームが正しいURLに投稿されるように、この問題を解決するにはどうすればよいですか。また、JSが無効になっている場合に正しく投稿されるように、正常に機能を低下させる必要があります。そのため、残念ながらJavascriptソリューションを受け入れることができません。