文 / 西打藍 Siddharam
前言
在開始前,你可能需要先熟悉 linux 指令,接著我們就來安裝 nginx,並嘗試把靜態資源上去。最後,我們會簡介服務器的目錄配置。
安裝 nginx
# 檢查有無可用的更新
sudo apt update
# 安裝 nginx
sudo apt install nginx
接著需要調整防火牆,打開 80 port。
# 打開 HTTP 80 port
sudo ufw allow 'Nginx HTTP'
# 檢視更改狀態
sudo ufw status
再來就能嘗試開啟 nginx 了。
# 啟動 nginx 服務器
sudo systemctl start nginx
# 關閉
sudo systemctl stop nginx
# 重新啟動
sudo systemctl restart nginx
# 如果只是更改配置,可以重新加載
sudo systemctl reload nginx
這時輸入你的 IP 就能看到畫面了。
佈署靜態資源
我們可以在 /var/www 目錄下,放置你的靜態資源,例如我們在底下新增 test 資料夾,並放上 html 檔案:
# 建立資料夾
sudo mkdir -p /var/www/test
# 修改裡頭的 html 檔案
sudo nano /var/www/test/index.html
<html>
<head>
<title>Welcome to Siddharam</title>
</head>
<body>
<h1>歡迎來到西打藍的教學</h1>
</body>
</html>
接著,我們要在 /etc/nginx/sites-available/default 修改配置文件:
sudo nano /etc/nginx/sites-available/default
server {
listen 80;
listen [::]:80;
root /var/www/test;
index index.html index.htm index.nginx-debian.html;
server_name test;
location / {
try_files $uri $uri/ =404;
}
}
如果你有 css / js / img 等靜態資源的話,還必須加上下列這段才能讀取的到:
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ #设定访问静态文件直接读取不经过tomcat
{
expires 30d;
root /var/www/analyze-robot/test;
}
location ~ .*\.(js|css)?$
{
expires 1h;
root /var/www/analyze-robot/test;
}
最後,我們要啟用 sites-enabled 的鏈接:
sudo ln -s /etc/nginx/sites-available/test /etc/nginx/sites-enabled/
重啟服務就能看到新的畫面囉:
sudo systemctl restart nginx
nginx 目錄解說
最後我們來列舉重要的目錄:
/var/www/html:實際的 Web 內容(默認情況下僅包含您之前看到的默認 Nginx 頁面)
是從/var/www/html目錄中提供的。這可以通過更改Nginx配置文件來更改。
/etc/nginx:Nginx 配置目錄。所有 Nginx 配置文件都放在這底下。
/etc/nginx/nginx.conf:主要的 Nginx 配置文件。可以對此修改 Nginx 全局配置。
/etc/nginx/sites-available/:可以存儲每站點服務器塊的目錄。
除非鏈接到此目錄,否則 Nginx 不會使用此目錄中的配置文件 sites-enabled。
通常,所有服務器塊配置都在此目錄中完成,然後通過鏈接到其他目錄來啟用。
/etc/nginx/sites-enabled/:存儲已啟用的每站點服務器塊的目錄。
是通過鏈接到 sites-available 目錄的配置文件來創建的。
/var/log/nginx/access.log:Web 服務器的日誌文件。
/var/log/nginx/error.log:任何 Nginx 錯誤都記錄在此日誌中。
閱讀量次
聯絡與合作
訂閱電子報,領「我當前 10+ 以上收入源有哪些」一文。
有文字採訪、網站開發,或是諮詢需求,皆可至個人網站參考作品,並聯繫 IG。
或是想分享心情、聊聊天、交朋友,可以來秘密通道找我唷。
Email: frank@siddharam.com