![Nginx + django +nodejs: キャッチされない構文エラー: 予期しないトークン '](https://rvso.com/image/769303/Nginx%20%2B%20django%20%2Bnodejs%3A%20%E3%82%AD%E3%83%A3%E3%83%83%E3%83%81%E3%81%95%E3%82%8C%E3%81%AA%E3%81%84%E6%A7%8B%E6%96%87%E3%82%A8%E3%83%A9%E3%83%BC%3A%20%E4%BA%88%E6%9C%9F%E3%81%97%E3%81%AA%E3%81%84%E3%83%88%E3%83%BC%E3%82%AF%E3%83%B3%20'.png)
nginx と nodejs を使用するのは初めてです。アプリが 2 つあり、1 つは django を使用して構築され、もう 1 つは nodejs (expressjs +openvidu) を使用して構築されています。nginx を設定しようとしていますが、django アプリは正常に動作しますが、nodejs で問題が発生しています。nginx は js ファイルを提供していません。コンソールに以下のエラーが表示されています (ブラウザーが JavaScript ファイルを見つけられないためと思われます)。両方の js ファイルは public フォルダーの下にあります。
キャッチされない構文エラー: 予期しないトークン '<'
これがDjangoとNode.jsをデプロイする適切な方法でない場合は、私に提案していただけますか?
以下は私の nginx 設定です。/ミーティングノードアプリです。
server {
server_name sophie.ovgu.de;
location /meeting {
proxy_pass https://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /videoapp {
proxy_pass http://unix:/run/gunicorn.sock;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/sophie.ovgu.de/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/sophie.ovgu.de/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = sophie.ovgu.de) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
listen [::]:80;
server_name sophie.ovgu.de;
return 404; # managed by Certbot
}
「proxy_pass https://localhost:5000」に注意してください。これは、openviduサーバーが要求するため、httpsである必要があります。こちらを参照してください。リンク
これは私のフォルダ構造です
├───node_modules
├───public
│ app.js
│ openvidu-browser-2.18.0.js
│───views
index.ejs
│ openviducert.pem
│ openvidukey.pem
│ package-lock.json
│ package.json
│ README.md
│ server.js
これはindex.htmlでjsファイルを呼び出す方法です
> <script src="/openvidu-browser-2.18.0.js"></script>
> <script src="/app.js"></script>
> <script>