我正试图将我的API部署到VPS。我用Dokku做这个。部署过程似乎运行良好。
我的初始端口是4000。我已经访问了http://my_ip:4000,我注意到我的API工作了。
问题出现在我使用dokku proxy:ports-add http:80:4000
将端口更改为80之后。在此之后,当我试图访问http://my_ip/
时,我收到"欢迎来到nginx";页面。
你知道有什么方法可以解决这个问题吗?
(**我必须提到,我已经使用iptables -I INPUT 1 -p tcp --dport PORT_NUMBER -j ACCEPT
端口4000和80)。
更新:从我的dokku应用程序nginx.conf的内容:
server {
listen [::]:80;
listen 80;
server_name api.example.com;
access_log /var/log/nginx/api-access.log;
error_log /var/log/nginx/api-error.log;
location / {
gzip on;
gzip_min_length 1100;
gzip_buffers 4 32k;
gzip_types text/css text/javascript text/xml text/plain text/x-component application/javascript application/x-javascript application/json application/xml application/rss+xml font/truetype application/x-font-ttf font/opentype appl> gzip_vary on;
gzip_comp_level 6;
proxy_pass http://api-4000;
proxy_http_version 1.1;
proxy_read_timeout 60s;
proxy_buffer_size 4096;
proxy_buffering on;
proxy_buffers 8 4096;
proxy_busy_buffers_size 8192;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Request-Start $msec;
}
include /home/dokku/api/nginx.conf.d/*.conf;
error_page 400 401 402 403 405 406 407 408 409 410 411 412 413 414 415 416 417 418 420 422 423 424 426 428 429 431 444 449 450 451 /400-error.html;
location /400-error.html {
root /var/lib/dokku/data/nginx-vhosts/dokku-errors;
internal;
}
error_page 404 /404-error.html;
location /404-error.html {
root /var/lib/dokku/data/nginx-vhosts/dokku-errors;
internal;
}
error_page 500 501 502 503 504 505 506 507 508 509 510 511 /500-error.html;
location /500-error.html {
root /var/lib/dokku/data/nginx-vhosts/dokku-errors;
internal;
}
}
upstream api-4000 {
server 172.17.0.4:4000;
}
我在Debian上部署第一个应用程序后也遇到了同样的问题。这可能是因为我在之前设置了我的Dokku的应用程序的域部署它。
所以我又做了一次相同的命令:dokku domains:set my_app my_domain.com
,它工作了…