時間:2023-08-22 01:24:01 | 來源:網站運營
時間:2023-08-22 01:24:01 來源:網站運營
云服務器搭建網站全過程:最近收到反饋說自己的刷題博客 https://leetcode.wang/ 無法訪問,但我這里是正常的。pages
服務,國內用戶是解析到 coding
上,國外用戶解析到 github
上,大概可能是 coding
的原因導致的一部分人打不開網站。CNAME
記錄,了解過 Nginx
,知道靜態(tài)網站,會基本的 linux
命令操作。Nginx
。yum install nginx
然后運行 nginx
。nginx
這時用瀏覽器訪問服務器的 ip
地址就可以看到一個默認的網站了。github
上的網站代碼下載下來。git clone XXX
進入 nginx
的配置目錄cd /etc/nginx/conf.d/
新建一個配置文件,如果添加多個網站,在這里繼續(xù)新建 .conf
文件即可。vim leetcode.conf
編輯配置文件,目錄設置成剛剛在 github
下載下來的網站server { listen 80; server_name leetcode.wang; location / { root /root/leetcode; index index.html index.htm; }}
編輯 nginx
的主配置文件,修改其權限為 root
。vim /etc/nginx/nginx.conf
原值 #user nobody;
修改為 user root;
nginx
nginx -s reload
去域名商將域名解析為配置文件中設置的 server_name
,如果之前設置了 CNAME
,記得刪除。github pages
。github
收到更新后自動更新服務器端代碼,參考了同學的一個教程 這里,幫助很大。github
收到 push
以后,發(fā)送一條 get
請求給服務器,服務器收到以后執(zhí)行已經寫好的命令。wget https://github.com/adnanh/webhook/releases/download/2.6.11/webhook-linux-amd64.tar.gz
解壓tar xzvf webhook-linux-amd64.tar.gz
編寫要執(zhí)行的命令腳本,隨意新建一個文件夾,然后在里邊編寫 pull.sh
和 leetcode.json
,這兩個名字是隨意的。mkdir hookcd hookvim pull.sh
內容如下。#!/bin/shcd ../leetcodegit reset --hardgit pull
編寫 webhook
的配置文件,名字隨意vim leetcode.json
內容如下[ { "id": "leetcode", "execute-command": "/root/hook/pull.sh", }]
然后回到 webhook
解壓出來的文件夾中,執(zhí)行 webhook
命令。screen
窗口。screen -S hook
執(zhí)行 webhook
命令./webhook -hooks ../hook/leetcode.json -verbose
然后顯示如下。ctrl + a + d
將程序運行到后臺。http://ip:9000/hooks/{id}
這個加到 github
的 webhook
中。id
是上邊配置的 leetcode
,ip
是服務器的 ip
。github
添加路徑是 Settings -> Webhooks -> Add webhooks
nginx
的主配置文件。vim /etc/nginx/nginx.conf
將下邊的代碼加入其中,在 http
大括號內。# 開啟gzipgzip on;# 啟用gzip壓縮的最小文件,小于設置值的文件將不會壓縮gzip_min_length 1k;# gzip 壓縮級別,1-10,數(shù)字越大壓縮的越好,也越占用CPU時間gzip_comp_level 6;# 進行壓縮的文件類型。javascript有多種形式。# 其中的值可以在 mime.types 文件中找到。gzip_types text/plain application/javascript application/json application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;# 是否在http header中添加Vary: Accept-Encoding,建議開啟gzip_vary on;# 禁用IE 6 gzipgzip_disable "MSIE [1-6]/.";
就是下圖的位置。nginx -s reload
然后可以在 這里 測試下是否壓縮成功。ftp
或者 github
。/etc/nginx
新建一個文件夾 cert
,把證書的兩個文件放入。leetcode.conf
修改成下邊的樣子即可。server { listen 80; server_name leetcode.wang; location / { root /root/leetcode; index index.html index.htm; } rewrite ^(.*)$ https://$host$1 permanent; #將所有http請求通過rewrite重定向到https。}server { listen 443 ssl; #SSL協(xié)議訪問端口號為443。此處如未添加ssl,可能會造成Nginx無法啟動。 server_name localhost; #將localhost修改為您證書綁定的域名,例如:www.example.com。 root html; index index.html index.htm; ssl_certificate cert/domain name.pem; #將domain name.pem替換成您證書的文>件名。 ssl_certificate_key cert/domain name.key; #將domain name.key替換成您證書>的密鑰文件名。 ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加密套件。 ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用該協(xié)議進行配置。 ssl_prefer_server_ciphers on; location / { root /root/leetcode; #站點目錄。 index index.html index.htm; }}
關鍵詞:過程,服務