nginx+redmine+passengerで、ファイルアップロードできない場合の対処法

昨年、nginxでリバースプロキシを設定したのですが、passenger+redmineのファイルアップロードができなくなりましたので、その解決方法です。
redmineを内包するディレクトリの権限は、apacheの実行ユーザーでパーミッションも適切に設定したのにファイルがアップロードできない方は試してみてください。


ファイルアップロード時、ファイルアップロードのフォームの右に「Not Found」が表示され、コンソールを確認すると、以下のように警告が出ます。


コンソール
https://example.com/uploads.js?attachment_id=aaaaaaaaaa.pdf (404 not found)


これはnginxの設定ファイルが原因なので、静的ファイルに適用するための正規表現を以下のように変更します。

/path/to/nginx/conf.d/redmine.conf
location ~* ^(?:(?:plugin_assets/|themes/).+/)(?:javascripts/.+\.js|stylesheets/.+\.css|images/.+\.(?:jpe?g|gif|htc|ico|png|html))$ {


これで問題なく、ファイルのアップロードに成功するかと思います。