當前位置:編程學習大全網 - 源碼下載 - 壹、服務器從零到壹——Ubuntu搭建nginx靜態服務器

壹、服務器從零到壹——Ubuntu搭建nginx靜態服務器

Ubuntu 18.04上的Nginx默認啟用了壹個服務器模塊,該模塊被配置為在/var/www/html目錄下提供文檔。 雖然這適用於單個站點,但如果您托管多個站點,它可能會變得很笨重。 我們不必修改/var/www/html ,而是在/var/www為我們的 example.com 網站創建壹個目錄結構,並將/var/www/html保留為默認目錄,如果客戶端請求沒有匹配任何其他網站。

按如下所示為example.com創建目錄,使用-p標誌創建任何必需的父目錄:

$ sudo mkdir -p /var/www/ example.com/html

接下來,使用$USER環境變量分配目錄的所有權:

USER:$USER /var/www/ example.com/html/

如果妳沒有修改妳的umask值,妳的web根目錄的權限應該是正確的,但是妳可以通過輸入:

$ sudo chmod -R 755 /var/www/ example.com/

接下來,使用gedit或您最喜歡的編輯器創建壹個index.html頁面示例:

$ gedit /var/www/ example.com/html/index.html

在裏面,添加下面的示例HTML:

<html>

<head>

<title>Welcome to Example.com!</title>

</head>

<body>

<h1>Success! The example.com server block is working!</h1>

</body>

</html>

為了讓Nginx提供這些內容,有必要創建壹個具有正確指令的服務器塊。 我們不要直接修改默認配置文件,而是在/etc/nginx/sites-available/ example.com上創建壹個新文件:

$ sudo gedit /etc/nginx/sites-available/example.com

粘貼到以下配置塊中,該塊類似於默認值,但已更新為我們的新目錄和域名:

server {

listen 80;

listen [::]:80;

}

請註意,我們已將root配置更新到我們的新目錄,並將server_name為我們的域名。

接下來,讓我們通過創建壹個鏈接到啟動sites-enabled目錄來啟用該文件,該目錄是Nginx在啟動過程中讀取的:

$ sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

現在啟用兩個服務器模塊並將其配置為基於listen和server_name指令響應請求(您可以閱讀關於Nginx如何處理這些指令的更多信息):

example.com :將響應 example.com 和 www.example.com 請求。

default :將響應端口80上與其他兩個塊不匹配的任何請求。

為了避免添加額外的服務器名稱可能導致的哈希桶內存問題,有必要調整/etc/nginx/nginx.conf文件中的單個值。

打開文件:sudo gedit /etc/nginx/nginx.conf

找到server_names_hash_bucket_size指令並刪除#符號以取消註釋該行:

...

http {

...

server_names_hash_bucket_size 64;

...

}

...

接下來,測試以確保您的Nginx文件中沒有語法錯誤:

$ sudo nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

nginx: configuration file /etc/nginx/nginx.conf test is successful

如果沒有任何問題,請重新啟動Nginx以啟用您的更改:

$ sudo systemctl restart nginx

熟悉重要的Nginx文件和目錄

nginx服務器配置文件:

/etc/nginx :Nginx配置目錄。 所有的Nginx配置文件都駐留在這裏。

/etc/nginx/nginx.conf :主要的Nginx配置文件。 這可以修改,以更改Nginx全局配置。

/etc/nginx/sites-available/ :可存儲每個站點服務器塊的目錄。 除非將Nginx鏈接到sites-enabled了sites-enabled目錄,否則Nginx不會使用此目錄中的配置文件。 通常,所有服務器塊配置都在此目錄中完成,然後通過鏈接到其他目錄啟用。

/etc/nginx/sites-enabled/ :存儲啟用的每個站點服務器塊的目錄。 通常,這些是通過鏈接到sites-available目錄中的配置文件創建的。

/etc/nginx/snippets :這個目錄包含可以包含在Nginx配置其他地方的配置片段。 可重復配置的片段可以重構為片段。

nginx服務器日誌文件:

/var/log/nginx/access.log :除非Nginx配置為其他方式,否則每個對您的Web服務器的請求都會記錄在此日誌文件中。

/var/log/nginx/error.log :任何Nginx錯誤都會記錄在這個日誌中。

  • 上一篇:MotionEvent的getAction、getActionMask和getActionIndex的區別
  • 下一篇:綜合安防實時預覽打不開
  • copyright 2024編程學習大全網