2016-10-24 6 views
2

号、Angular2 + nginxのディープリンク/ルーティング私はApacheウェブサーバ上で、次の.htaccessでAngular2アプリケーションをデプロイし

<IfModule mod_rewrite.c> 
    Options +FollowSymlinks 
    RewriteEngine On 
    RewriteCond %{REQUEST_FILENAME} -f [OR] 
    RewriteCond %{REQUEST_FILENAME} -d 
    RewriteRule^- [L] 
    RewriteRule^index.html [L] 
</IfModule> 

とのindex.htmlで追加設定、

<base href="/applicationName/"> 

アプリケーションは問題なくロードでき、リダイレクトに問題はありませんでした。

私は今、私のNginxサーバーで同じアプリケーションをセットアップしようとしていますが、動作させることができませんでした。

Nginxに.htaccessがないことを理解していますが、上記の.htaccessをNginxのメイン設定でどのように変換するのですか?

ありがとうございます!

+0

誰でも?ありがとう! – avn

答えて

1

Nginxは実際に私の意見ではApacheよりかなり簡単です。これを行う1つの方法は、このようなサーバーブロックを作成することです。これはもちろん、あなたのサーバ上のnginxの設定ファイルにアクセスできるなら、これはもちろんです。

server { 
    listen  80; 
    server_name example.com; 

    root /path/to/your/index; 
    index index.html; 

    location/{ 
     try_files $uri $uri/ /index.html; 
    } 
} 
+0

こんにちはピエール、私は私の既定の構成ファイルで上記のブロックを試みたが、まだ運がない。 – avn

+0

私はメインインデックスページを読み込むことができますが、プロセスを実行しようとすると、たとえば。ログイン、エラー500、 ==> /var/log/nginx/error.log <== 2016/10/24 01:45:59 [エラー] 1005#0:* 2リライトまたは内部クライアント:123.123.123.123、サーバー:example.com、リクエスト: "POST /identity/api/users/login.json HTTP/1.1"、ホスト: "123.123.123.123"に内部的にリダイレクトするリダイレクトサイクル"、referrer:" http://domain.com/application/login " – avn

+0

ああ、別のことは、同じサーバー上で複数のアプリケーションが実行されるため、ルートは/ var/www/htmlに設定されているということですメインのドキュメントルートであり、ブラウザのアドレスバーの/の後ろにアプリケーション名を追加します。 – avn

関連する問題