溫馨提示×

如何在CentOS上配置Golang Web服務器

小樊
44
2025-04-10 14:29:06
欄目: 云計算

在CentOS上配置Golang Web服務器的步驟如下:

1. 安裝Golang

首先,你需要在CentOS上安裝Golang。你可以從Golang官方網站下載適用于Linux的安裝包。

使用yum安裝Golang

sudo yum install golang

手動安裝Golang

  1. 下載Golang安裝包:
wget https://golang.org/dl/go1.17.6.linux-amd64.tar.gz
  1. 解壓安裝包:
sudo tar -C /usr/local -xzf go1.17.6.linux-amd64.tar.gz
  1. 配置環境變量:

編輯/etc/profile.d/golang.sh文件,添加以下內容:

export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

然后使配置生效:

source /etc/profile.d/golang.sh

2. 創建Web服務器項目

在你的工作目錄下創建一個新的Go項目:

mkdir mywebserver
cd mywebserver

創建一個簡單的Go Web服務器:

// main.go
package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintf(w, "Hello, World!")
    })

    fmt.Println("Starting server at port 8080")
    if err := http.ListenAndServe(":8080", nil); err != nil {
        fmt.Println(err)
    }
}

3. 運行Web服務器

在項目目錄下運行以下命令啟動Web服務器:

go run main.go

4. 訪問Web服務器

打開瀏覽器,訪問http://your_server_ip:8080,你應該會看到"Hello, World!"的消息。

5. 配置防火墻

為了確保外部可以訪問你的Web服務器,你需要配置CentOS的防火墻。

使用firewalld配置防火墻

  1. 啟動firewalld服務:
sudo systemctl start firewalld
  1. 允許HTTP和HTTPS流量:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
  1. 重新加載防火墻配置:
sudo firewall-cmd --reload

6. 使用systemd管理服務(可選)

為了更方便地管理你的Web服務器,你可以創建一個systemd服務。

  1. 創建一個新的systemd服務文件:
sudo nano /etc/systemd/system/mywebserver.service
  1. 添加以下內容:
[Unit]
Description=My Go Web Server
After=network.target

[Service]
User=your_username
Group=your_groupname
ExecStart=/usr/local/go/bin/go run /path/to/your/project/main.go
Restart=always

[Install]
WantedBy=multi-user.target
  1. 啟動并啟用服務:
sudo systemctl daemon-reload
sudo systemctl start mywebserver
sudo systemctl enable mywebserver

現在,你的Golang Web服務器應該在CentOS上運行,并且可以通過瀏覽器訪問。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女