問題タブ [rewritemap]
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.
asp.net - IIS で #Include をリダイレクトする
私は、従来の ASP、インライン ASP.NET、およびコンパイル済み ASP.NET が混在する、継承した大規模なサイトで作業しており、それらすべてが#INCLUDE
何らかの形でタグを利用しています。私はIISで遊んでいて、マップを書き換え/書き換えており、このサイトを使用可能なソリューションにゆっくりと変換するときに、ページへのリクエストを取得して新しいバージョンにリダイレクトするための有効なソリューションを見つけたようです#INCLUDE
.ユーザーによって直接要求されたのとは対照的に) は、書き換えやマップの書き換えを尊重していないようです。含まれているページに直接アクセスすると、期待どおりに書き換えられますが、URL が埋め込まれたページにアクセスすると、そうではあり#INCLUDE
ません。
なぜこれが起こるのかを理解していると確信しています(直接要求されていないため、書き換え/リダイレクトは機能せず、ユーザーコントロールのように処理するだけです)、これを実現するための推奨事項はありますか?通常は、インクルードを使用して新しい場所を指すようにファイルを修正するだけだと思いますが、このサイトには 4,221 個の Web ファイルが数百のフォルダーに散らばっており、1MM を超える画像が混在しています。その混乱の中でファイル名などの文字列を検索しています永遠にかかるので、これを処理できるより高いレベルの何かを見つけようとしています。
考え?
apache - ReWrite Map を使用した 2 つの GET 変数による 301 リダイレクト
この URL の 2 つの GET 変数に基づいて 301 リダイレクトを試みています: http://www.jwsuretybonds.com/surety-bonds/surety_bond.php?bond_form_id=171&bond_type_id=45
リダイレクト先: http://www.jwsuretybonds.com/surety-bonds/commercial-bonds/contractor-license-bonds/california/#qual
これ ( 301 Redirecting URLs based on GET variables in .htaccess ) のスタック オーバーフローの投稿がベスト プラクティスのようですが、私は Apache の経験がなく、これを 2 つの GET 変数で動作するように変更する方法がわかりません。
ご協力いただきありがとうございます。
regex - IIS7 でマップを書き換える — オプションで末尾のスラッシュを含めるにはどうすればよいですか?
などのいくつかの組み合わせについて、Google の上位 30 件のヒットを読みましたIIS rewrite map condition
が、microsoft.com サイトまたは他の場所で適切なドキュメントを見つけることができません。
IIS7 には、末尾のスラッシュが続くかどうかに関係なく処理したい書き換えマップがたくさんあります。したがってwww.foo.com/bar
、 andwww.foo.com/bar/
は両方ともルールに一致する必要があります。
現在、これは完全にうまく機能しますが、書き換えマップの最初のキーを一致させる唯一の方法は/terms/
、マップを複製することであり、次のようになります。
そもそも正規表現を使用してそれらを照合していることを考えると、これはとてつもなく洗練されていないように思えます。条件入力または条件パターンへの追加/?
が機能していないようです。
IIS7 Rewrite Map Regexへの回答を見ましたか? 正規表現は使用できないと述べています(Using Rewrite Maps in URL Rewrite Moduleから引用)が、私がそこでコメントしたように、これは大規模な「これは決して機能しない」というよりも、そのテキストの前に示されている特定の例に関連しているようです.
私は何が欠けていますか?これを行うには何らかの手段が必要です。明らかな何かが欠けていますか?
apache - RewriteCond 条件パターンでの変数の使用
次のような特定のアプリケーション ID にユーザー ID を関連付けたい:
私のURIは次のようになります:
ここで、ユーザーのブックマークに影響を与えずにアプリケーションを簡単に変更できるようにしたいと考えています。私の例では、両方が必要です
として奉仕する
次のルールでは、無限ループが発生します。
リダイレクト後、Apache は常に同じルールを実行することを理解しています。次に、次のように、ループをブロックする書き換え条件を追加しようとしました
書き換えログを正しく読むと、条件パターンで変数 !^/${map:$2} が置き換えられず、「そのまま」チェックされていることがわかります。そして、条件は常に真であり、それでも無限ループが発生します。
アプリケーション ID がマップと一致するとすぐにループをブロックするアイデアはありますか?
iis - IIS 7.5 URL 書き換えモジュール - 変数を使用してマップを書き換える
私のサイトには、短縮できるようにしたい、長くて読めない URL を持つページがいくつかあります。私が抱えている問題は、クエリ文字列に変数値を追加することです。
例: 「www.example.com/dir1/dir2/filename.php」は「www.example.com/file」に短縮されます。「www.example.com/dir1/dir2/filename.php?id=2」は「www.example.com/file/2」になります。「www.example.com/dir1/dir2/filename.php?id=2&alt=6」は「www.example.com/file/2/6」になります。
「id」と「alt」の値は、ページのコンテンツを決定するデータベース内の情報にアクセスするためにページで使用されます。これらの値は変更される可能性があり、設定された量はありません。
現在、次の書き換えルールを使用して、最初の例が正常に機能しています。
しかし、URL に変数を含めることを許可するものを見つけることができませんでした。私が見たものはすべて、現在のソリューションが使用しているように静的な書き換えを使用しており、任意のパラメーターを許可することについては何も見つかりません。
編集:
書き換えマップを使用しないより良い解決策を見つけました。以前に同様のルールを試みましたが、テスト環境での IIS セットアップが原因で、期待どおりに機能しませんでした。このバージョンは、ほとんどの人にとって機能するはずです。
.htaccess - RewriteMap がまったく機能しない
いくつかのバニティ URL で MapRewrite を機能させようとしていますが、うまくいきません。エラーは発生しません。動作していないようです (リダイレクト)。
vhost.conf に記述したコードは次のとおりです。
私が探しているのは、「www.mydomain.com/some_folder」が存在するかどうかを判断することです。そうでない場合は、「myconditions.txt」で「some_folder」を探し、対応する場所にリダイレクトします。
MyConditions.txt の例を次に示します。
www.mydomain/some_folder へのアクセスは、単なるリンク切れです。
誰かが私を正しい方向に向けることができますか?
(ファイルが読み込まれることを確認するために、Vhost.conf と .htaccess にガベージを入れてテストしたことに注意してください)
performance - RewriteMaps-Text ファイルを使用したパフォーマンスの向上
書き換えマップを使用して URL リダイレクトのパフォーマンスを向上させる方法は何ですか。
現在、テキスト ファイル内のルックアップ キーを使用してマップを書き換えています。テキスト ファイルには 2000 個のキーがあり、その数は今後数か月で 100% 増加すると予想されます。
テキスト ファイルはソートされた順序であり、すべての URL リダイレクトは 301 です。
ありがとう。