2017-11-19 12 views
0

私が欲しかったのは本当にシンプルでしたが、うまく機能しません。 8080 そして、私は完璧に動作し、この単純なApache mod_rewriteはうまく動作しません。

<VirtualHost *:443> 
    RequestHeader set X-Forwarded-Proto "https" 
    ProxyPreserveHost On 
    ServerName shopecific.com 
    RewriteEngine On 
    RewriteRule /(.*)   http://localhost:8080/$1 [P,L] 
    ... 
</VirtaulHost> 

のように、Node.jsのにルーティングする要求をApacheのmod_rewriteのを使用します。

最初のアプリケーションは、すなわち、ローカルホスト、Node.jsの上で実行されています。それから私はhttps://shopecific.com/amzvarからhttps://shopecific.com/amzvar.html

にある静的なページ、1つの要求をリダイレクトしたいしかし、私は、次の書き換えルールを試してみましたが、それらの作品のどれも:

# RewriteRule ^/amzvar$, /amzvar.html [R,L] 
# RewriteRule ^/amzvar$, https://shopecific.com/amzvar.html [R,L] 
# RedirectMatch 301 ^/amzvar$ https://shopecific.com/amzvar.html 

はどういうわけか、それらのルールは単に無視なっていません私はいつも見つからないページを持っています。 "amzvar"はNode.jsの定義されたルートではありません。私は、routers.jsの以下のルールによって、「見つからない」にリダイレクトされる可能性があることを理解しています。

<Route path="*" component={NotFound} status={404} /> 

ただし、Apacheルールは最初に一致する必要があります。

私はここで何が欠けていますか?

+0

'RewriteEngine On' –

+0

はい、@DusanBajicを実行しました。最後のルールであることを示すために 'L'フラグを追加しました。 –

答えて

0

サービスワーカーに関連しているようです。どういうわけかReact-Router V3とService Workerは、未定義のルータを処理するために一緒に動作しません(つまり、Apacheの設定でも他のルールに関係なくデフォルトルート()にリダイレクトされます)

関連する問題