接續上回的chown,還記得這指令的作用嗎?複習一下,假設今天有個檔案想要將檔案交接給某個使用者管控並且賦予給某個群組的這些使用者也擁有一定的權限時就可以用到這個指令。
接下來重新來看以下範例:
假設有個叫做test這個資料夾,想要安排賦予yee這個使用者為他的擁有者,並且給予bbq這個群組內使用者擁有一定控制權限,可以使用如下指令:
chown yee:bbq test
chown -R yee:bbq test
#千萬要注意無論是包含指令、參數、路徑之間皆需要以空格隔開
了解以上內容之後就要開始接觸到服務了,在伺服器中少不了會需要多個服務來支持伺服器運作,其中包含了如運行靜態、動態網站所需的nginx 、apache等httpd 服務,上傳檔案靜態資源需要ftpd服務,運行後端需要一照需求安裝java、python或nodejs等候端服務,另外資料庫也有相對應的服務較常見的是mysqld,以下用個常用來幫專案學員架設用的服務器設定檔來說明。(系統範例為ubuntu,若用centos相近系列linux 請自行轉換安裝指令為yum)
LNMP是甚麼?
LNMP是基於作業系統Linux 、網站服務器Nginx 、資料庫MySql 、後端支援PHP為基礎的服務器架構,由於架構簡單、相關資源豐富、開發金費相對較節省,故被各中小企業網站所喜愛,用於建置官方網站或小型購物網站。
NGINX:
sudo apt update
#這行常用於安裝前更軟體新源列表確保資源正確
sudo apt install nginx
#NGINX主要安裝指令,sudo為授權權限指令,apt install為安裝指令,最後打上要安裝的軟體,這邊安裝的是nginx
P.S.後續不再重複標註基礎安裝命令
安裝完後通常會在系統目錄下的etc找到相對應套件設定檔:
ex:nginx的設定檔在/etc/nginx/ 目錄內
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak
#建議每次修改設定檔時都先將原始設定檔備份,這邊將原檔名附加.bak作為備份標註
cp:
sudo cp 原目錄或檔案路徑名稱 複製目的地路徑名稱
vim:
vim是linux常見的編輯器之一,在純文字模式下時常會需要靠他來修該設定檔
狀態:
一般模式:無進入任何模式下僅有快捷功能,無法編輯
指令模式:可輸入指令開啟/關閉/使用功能
輸入模式:可進行內容編輯
進入輸入模式:按鍵i
進入指令模式:按鍵:(shift+;)
返回一般模式:按鍵esc
搜索:按鍵/輸入查找內容
行刪除:按鍵dd連按
離開:按鍵:q
儲存:按鍵:w
儲存並離開:按鍵:wq
強制離開:按鍵:!q
顯示行號:按鍵:set number
取消行號:按鍵:set nonumber
Mariadb:
sudo apt update
sudo apt install mariadb-server
#安裝mariadb
sudo mysql_secure_installation
#mysql_secure_installation該指令用於設定初始設定資料庫,為引導式安裝,照需求選擇yes or no即可,也可以全使用yes後開始使用資料庫再調整。
p.s.主要核心項目:
Change the root password? [Y/n]
#是否變更root密碼
New password:
#輸入root新密碼
Re-enter new password:
#再次確認root密碼
Disallow root login remotely? [Y/n]
#讓是否禁用root作為登入用途(因root帳號權限過大,這邊建議按Y移除root登入權限)
詳細設定可以到mariadb頁面觀看:https://mariadb.com/kb/en/mysql_secure_installation/
PHP:
安裝:
sudo apt-get install php7.4-fpm php7.4-cli php7.4-mysql php7.4-curl php7.4-json -y
php安裝案例使用的是php7.4版本,其他對應版本可以問google大神。
修改nginx支援後端php:
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak
#建議每次修改設定檔時都先將原始設定檔備份,這邊將原檔名附加.bak作為備份標註
cp:
sudo cp 原目錄或檔案路徑名稱 複製目的地路徑名稱
vim:
vim是linux常見的編輯器之一,在純文字模式下時常會需要靠他來修該設定檔
vim狀態介紹:
一般模式:無進入任何模式下僅有快捷功能,無法編輯
指令模式:可輸入指令開啟/關閉/使用功能
輸入模式:可進行內容編輯
vim模式快捷:
進入輸入模式:按鍵i
進入指令模式:按鍵:(shift+;)
返回一般模式:按鍵esc
搜索:按鍵/輸入查找內容
行刪除:按鍵dd連按
離開:按鍵:q
儲存:按鍵:w
儲存並離開:按鍵:wq
強制離開:按鍵:!q
顯示行號:按鍵:set number
取消行號:按鍵:set nonumber
透過以上vim指令來修改nginx設定檔:
sudo vim /etc/nginx/sites-available/default
將原服務器設定檔依照下修改:
修改前
#location ~ \.php$ {
# include snippets/fastcgi-php.conf;
# With php-fpm (or other unix sockets):
# fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
#}
修改後
location ~ \.php$ {
include snippets/fastcgi-php.conf;
# With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
}
(#此符號為備註作用,備註行不會被執行,去除#則會開啟作用)
location設定:
正則模式:~ (為區分大小寫的正則)
uri設定:\.php$
引入fastcgi-php.conf設定檔
指定fastcgi_pass設為php連接端口
支援格式修改前:
index index.html index.htm index.nginx-debian.html;
支援格式修改後:
index index.php index.html index.htm index.nginx-debian.html;
#以上支援多添加了index.php是為了讀取網站根目錄時能將index.php也作為預設格式,不添加則需要手動輸入index.php
以上服務安裝設定先到這邊,後續會再針對常用的幾個服務做說明,那就先醬囉~下回見~