問題タブ [rack-rewrite]

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.

0 投票する
1 に答える
1008 参照

ruby-on-rails - ラック書き換えを使用して www を URL に追加するにはどうすればよいですか?

ユーザーがそれを使用しない場合、URL に www を追加するように Rails アプリをリダイレクトしたいと考えています。このサイトを見つけて削除しましたが、反対のことをしたいと思います:

http://steve.dynedge.co.uk/2010/03/03/using-rackrewrite-to-remove-the-www/

0 投票する
2 に答える
299 参照

ruby-on-rails - POSTリクエストだけを書き換えるためにrack-rewriteを使用することは可能ですか?

それでおしまい。POST リクエストだけをリダイレクトする必要があります。何かのようなもの:

出来ますか?

0 投票する
3 に答える
1184 参照

ruby-on-rails - WPブログをHerokuのRailsアプリにリンクする必要があります

RailsアプリをHerokuに移行したいクライアントがいます。ただし、クライアントには、WordPressで実行されるドメインに関連付けられたブログもあります。現在、WordPressブログはRailsアプリと一緒にうまく実行されていますが、Herokuに移行すると、それは明らかに不可能になります。

アプリのURLはhttp://mydomain.comのようなもので、ブログのURLはhttp:// mydomain/blogのようなものです。

長期的な最善の解決策は、TotoやJekyllのようなRails形式でブログをやり直すことだと思います。しかし、短期的には、WPブログを現在の場所(またはどこか)でホストし続け、Herokuを使用してアプリを実行するための最良の方法は何ですか?クライアントは、ブログがサブドメインにあることを望んでいませんが、SEOの理由と、ブログへのトラフィックがあるため、mydomain/blogにとどまります。私には2つのアイデアがあります:

  1. 古い(非Heroku)サーバーでrack_rewriteまたはrefraction(または通常の古い301とApache mod_rewrite)を使用して、メインURLを古いサイトからHerokuにリダイレクトします。この場合、Wordpressブログをそのままにしておくことができます。おもう??このようにした場合、他のオプションよりもこれらのオプション(rack_rewrite、refraction、またはmod_rewrite)の1つを選択する理由はありますか?

  2. DNS情報をHerokuサイトを指すように切り替えてから、ブログから古いサイトへの301リダイレクトを使用します。ただし、サブドメインで古い(Heroku以外の)サイトを取得し、とにかく何らかの書き換えルールを使用して、サブドメインではないように見せかける必要があります。

これらのアプローチのいずれかが望ましいですか、それとも私が見逃しているより簡単な別の方法がありますか?

0 投票する
1 に答える
631 参照

ruby-on-rails - ラックリライトを使用して.htmlを削除するにはどうすればよいですか(ファイルが存在する場合)?

私はRubyistではありませんが、Jekyllが好きで、HerokuやGitと組み合わせて「ブログ対応」サイトを簡単に立ち上げることができます。

Rack-Rewriteを使用して(または、同じことを行うためのより良い方法がある場合は、それを使用して満足しています)、「/foo」を「/foo.html」に書き換えます(つまり、.htmlを追加します)。ただし、ブラウザは変更しません)。ただし、既存のファイルまたはフォルダでない場合に限ります。

前半(つまり、/ fooを/foo.htmlに書き換える)に必要なものだと思いますが、条件付きの「ファイルが存在しない場合」の部分で苦労しています rewrite %r{/(.*)}, '/$1.html'

それが役立つ場合は、IISの下で、次のように同じことを実行しました。

0 投票する
0 に答える
163 参照

ruby-on-rails - Rack::Rewrite を使用して TLD に続く期間を書き換える

Rack-rewrite gem を使用して、Rails アプリで URL を書き換えています。

私が避けたい問題の 1 つは、TLD の後にトレーリング ピリオドがあることです。

これがGoogleジュースにとって重要かどうかは100%わかりませんが、リクエストしているドメインに基づいてライセンスを検証するDisqusと私のビデオプレーヤーにとっては重要です.

私が見ている問題は、ラック環境が SERVER_NAME 変数にこの末尾のピリオドを表示しないことです。

リクエスト時にログに表示される内容は次のhttp://example.com./fooとおりです。

ご覧のとおり、どの変数にも.ドメインの後に末尾が含まれていません。

これはRack::Rewriteでも可能ですか?

0 投票する
1 に答える
1040 参照

ruby-on-rails - Rails: Heroku の DNS、Rack-rewrite などを使用した適切なセットアップ

私はインターネット全体を見てきましたが、Heroku.com で次の結果を得るために、DNS などの 100% 適切なセットアップであると期待される最終的な解決策を 1 つ得ることができませんでした。

  • mydomain.com を使用して myapp.herokuapp.com のコンテンツを表示する
  • http://mydomain.comからhttp://www.mydomain.comへのすべてのトラフィックのリダイレクト(サブフォルダーを含む)

私はどこからでも少し助けを得ることができますが、DNS からラック書き換えまでの問題全体を処理する決定的なものはありません。そのため、ここで質問しています (私のレジストラと Heroku でのサポートは、私に「彼らの役割」を与えることしかできません)。 )。

私が理解している限り、行う必要があるのは次のとおりです。

  1. mydomain.com と www.mydomain.com を Heroku のカスタム ドメインに追加する

  2. レジストラ DNS でCNAME をhttp://myapp.herokuapp.comに変更します。質問: myapp.herokuapp.com への CNAME リダイレクトを使用するのは、「www」と「*」の両方ですか?

  3. ネイキッド ドメイン リクエスト (http://mydomain.com) を処理するために、「@」DNS レコードを追加します。これは CNAME では行われないため、 https://devcenter.heroku.com/articles/custom-domainsの IP 番号を使用していますが、記事によると稼働時間に深刻な問題があります。

-- 1-3 で、 http://myapp.herokuapp.comのコンテンツでhttp://mydomain.comhttp://www.mydomain.comの両方を提供する Web サイトができました

c. ここで、すべてをhttp://mydomain.comからhttp://www.mydomain.comにリダイレクトしたいと考えています。Heroku のサポートによると、これはラック書き換え (https://github.com/jtrupiano) で行う必要があります。 /rack-rewrite)。そこにある例を使用すると、コードは次のようになります。

ただし、これは私にとって永遠のループを作成します。

そこで、私の質問は次のとおりです。このセットアップを実現するために、Heroku と DNS 設定の適切なワークフローは何でしょうか?

試行錯誤によってさまざまな DNS 設定を試すのは非常に難しいため、これをトラブルシューティングすることは非常に困難です (それらが成功したかどうかを知ることは困難です)。

0 投票する
1 に答える
395 参照

ruby - ラック書き換えを使用して別のドメインに書き換える方法は?

http://domain1.com/abc がhttp://domain2.com/xyzを指すように、別のドメインに書き換えたいと思います。これは私のコードです:

しかし、http://domain1.com/abcを開いた後、 http://domain1.com/http:/domain2.com/xyzを指してい ます。正しい場所を指すようにどのように書き直すことができますか?

0 投票する
3 に答える
784 参照

ruby-on-rails - https を http にリダイレクトするためのラック書き換えコード (heroku 上)

どういうわけか、Google は私のホームページをhttps://mydomain.comとしてインデックスに登録しました。site:mydomain.com 検索を実行すると、最初の結果はhttps://mydomain.comで、SSL 証明書がなく、https を実行したくありません。もちろん、訪問者はブラウザーで醜い警告を受け取ります (heroku はデフォルトで *.heroku 証明書を提供するため)。

Rack-rewrite gem を使用して 301 リダイレクトを実行できるようですが、方法がわかりません。

では、すべての https:// を http:// にリダイレクトするためのラック書き換えレシピは何ですか? 私が見つけることができるのは、逆のことを行う方法、または正規のリダイレクトを行う方法に関する情報だけです。

0 投票する
1 に答える
811 参照

ruby-on-rails - rack-rewrite すべてのサブドメインをルート ドメインにリダイレクトします (ルートを除く)

これを行う方法:

ラック書き換え構文で?

0 投票する
1 に答える
513 参照

ruby - ラック書き換え応答へのクエリ文字列の追加

次のように、サイトに登録した .com 以外のすべてのドメインをキャプチャする単純な 301 リダイレクトがあります。

元のドメインを次の形式で追加するために、応答にクエリ文字列を追加したい

しかし、サーバーをクラッシュさせない方法を完全に理解することはできません:)それを実行して、元のクエリ文字列を保持できますか?

誰かがメイン ドメインの下のサブページにアクセスする可能性は低いですが、書き直しから $& を削除し、それを自分の文字列に置き換えると、ログにエラーが表示されずに爆発します...