Развертывание приложения Angular 2 с экспресс и моноблоком на путанице Digitalocean - PullRequest
1 голос
/ 16 марта 2019

Я боролся с развертыванием приложения Angular 7 вместе с node, express и mongo все утро, и я запутался в своем уме. Некоторые, как нет хорошего объяснения, как это сделать во всем Интернете. Пожалуйста, помогите!

Я нахожусь на DigitalOcean. Я настроил Nginx и смог увидеть страницу индекса Nginx на своем IP-адресе. Я также настроил серверный блок с двумя расположениями внутри него, одно для моего настоящего приложения Angular, а другое для моего экспресс-API. Вот этот код:

server {

        root /var/www/devgrub.com/html;
        index index.html index.htm index.nginx-debian.html;

        server_name devgrub.com www.devgrub.com;

        location / {
                try_files $uri $uri/ =404;
        }

        location /api {
                proxy_pass http://localhost:8080;
                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;
                #try_files $uri $uri/ =404;
        }

    listen [::]:443 ssl ipv6only=on; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/devgrub.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/devgrub.com/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 = www.devgrub.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    if ($host = devgrub.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


        listen 80;
        listen [::]:80;

        server_name devgrub.com www.devgrub.com;
    return 404; # managed by Certbot

}

Внутри /var/www/devgrub.com/html Я загрузил код для моего приложения Angular, созданного после запуска ng build --prod

Внутри /home/devgrub У меня есть приложение для экспресс / узлов.

Я могу успешно получить доступ к своему Angular-приложению на devgrub.com, однако, когда я зашел на devgrub.com/api, он дал мне hello world, который был взят из оригинального приложения для узлов, которое я сделал, следуя руководству по установке для DigitalOcean. Я перезапустил свое приложение для узла, которое работает с PM2, и теперь оно говорит 502 Bad Gateway при посещении devgrub.com/api.

Я изменил все свои localhost вызовы API в моем приложении Angular, надеясь, что это что-то сделает, но это не так. Я создал БД с use devgrub, но приложение Angular, похоже, не может подключиться к нему, и, поскольку я новичок в этом, у меня есть идея, с чего начать устранение неполадок. Пожалуйста, помогите!

Обновление Вот некоторые ошибки из журналов ошибок Nginx

2019/03/16 17:55:10 [warn] 14358#14358: server name "devgrub.com/api" has suspicious symbols in /etc/nginx/sites-enabled/devgrub-api:8
2019/03/16 17:55:10 [warn] 14358#14358: server name "www.devgrub.com/api" has suspicious symbols in /etc/nginx/sites-enabled/devgrub-api:8
2019/03/16 17:55:10 [notice] 14358#14358: signal process started
2019/03/16 17:56:14 [crit] 14359#14359: *98 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 184.105.139.70, server: 0.0.0.0:443
2019/03/16 17:57:11 [warn] 14436#14436: server name "devgrub.com/api" has suspicious symbols in /etc/nginx/sites-enabled/devgrub-api:8
2019/03/16 17:57:11 [warn] 14436#14436: server name "www.devgrub.com/api" has suspicious symbols in /etc/nginx/sites-enabled/devgrub-api:8
2019/03/16 17:57:11 [notice] 14436#14436: signal process started
2019/03/16 17:57:22 [error] 14437#14437: *100 connect() failed (111: Connection refused) while connecting to upstream, client: 71.175.29.181, server: devgrub.com, request: "GET /api HTTP/1.1", upstream: "http://127.0.0.1:3000/api", host: "devgrub.com"
2019/03/16 17:57:51 [warn] 14501#14501: server name "devgrub.com/api" has suspicious symbols in /etc/nginx/sites-enabled/devgrub-api:8
2019/03/16 17:57:51 [warn] 14501#14501: server name "www.devgrub.com/api" has suspicious symbols in /etc/nginx/sites-enabled/devgrub-api:8
2019/03/16 17:57:51 [notice] 14501#14501: signal process started
2019/03/16 17:57:52 [error] 14502#14502: *104 connect() failed (111: Connection refused) while connecting to upstream, client: 71.175.29.181, server: devgrub.com, request: "GET /api HTTP/1.1", upstream: "http://127.0.0.1:3000/api", host: "devgrub.com"
2019/03/16 17:57:53 [error] 14502#14502: *104 connect() failed (111: Connection refused) while connecting to upstream, client: 71.175.29.181, server: devgrub.com, request: "GET /api HTTP/1.1", upstream: "http://127.0.0.1:3000/api", host: "devgrub.com"
2019/03/16 17:57:54 [error] 14502#14502: *104 connect() failed (111: Connection refused) while connecting to upstream, client: 71.175.29.181, server: devgrub.com, request: "GET /api HTTP/1.1", upstream: "http://127.0.0.1:3000/api", host: "devgrub.com"
2019/03/16 18:05:21 [error] 14502#14502: *110 connect() failed (111: Connection refused) while connecting to upstream, client: 71.175.29.181, server: devgrub.com, request: "GET /api HTTP/1.1", upstream: "http://127.0.0.1:3000/api", host: "devgrub.com"

1 Ответ

0 голосов
/ 04 апреля 2019

Здравствуйте, приятель, не могли бы вы поделиться настройкой брандмауэра с вашими серверами utf, в случае, если ip не разрешен в брандмауэре, вы можете столкнуться с этими проблемами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...