无法创建在线网页

时间:2019-07-04 05:12:05

标签: go

我正在尝试创建Golang网页...

进度:

  1. Ubuntu 18.04既安装在本地也安装在Linode VPS上。
  2. 创建并编译了本地Golang“ Hello World”脚本,该脚本可在本地和在线呈现OK。
  3. 创建了一个net / http Golang脚本,当在本地http://localhost:8080/testing调用以查看是否有效时,该脚本可以正常工作
  4. 将脚本上传到Linode服务器,并显示初始状态消息,但是在调用http:123.456.789.32:8080 / testing以查看其是否正常时,浏览器冻结。
//
// Golang - main.go
//
package main

import (
  "net/http"
)

func sayHello(w http.ResponseWriter, r *http.Request) {
  message := r.URL.Path
  message = "Hello " + message

  w.Write([]byte(message))
}

func main() {
  http.HandleFunc("/", sayHello)

  if err := http.ListenAndServe(":8080", nil); err != nil {
    panic(err)
  }
}

没有呈现任何错误或警告,也找不到任何日志引用。

是否可以记录或呈现类似于PHP error_reporting(-1),declare(strict_types = 1)等的错误和警告?

1 个答案:

答案 0 :(得分:1)

使用Nmap进行的快速检查显示了以下结果:

nmap -sV -p 8080 <yourIP>
Starting Nmap 7.70 ( https://nmap.org ) at 2019-07-04 07:45 CEST
Nmap scan report for <your-domain>.com (<yourIP>)
Host is up (0.032s latency).

PORT     STATE    SERVICE    VERSION
8080/tcp filtered http-proxy

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.90 seconds

“已过滤”状态实际上意味着该端口上没有任何响应,与完全拒绝该请求相反。

检查iptables -L -n的输出。大概您有一个防火墙正在运行并阻塞了8080端口。不要不要简单地停用防火墙,而是请阅读如何在所使用的防火墙产品中打开8080端口。 Linode有guides for the commonly used/preinstalled firewalls of various Linux distributions

如果您打算投入生产,请帮助您确保部署的安全性和可用性。