前言:無論是在百度雲還是阿裡雲Linux系統伺服器都大同小異。推薦一片文章傳送門。這篇文章主要說nginx,用apache的可以到傳送門去尋找。注意,ubuntu用apt管理工具,centos是yum管理工具;
一、本地連接配接你的伺服器
購買流程就不說了,我們從你購買完成浏覽器并建立好執行個體
image.png
此時你通過ip是無法在位址欄通路的,需要先連接配接伺服器配制環境。
遠端控制 Linux 類型的系統的伺服器,比如 ubuntu 系統的伺服器,一般不像 Windows 伺服器那樣,使用圖形界面的遠端控制。我們需要使用指令行工具,遠端連接配接到伺服器,然後使用指令去控制伺服器。Windows 使用者可以使用 Putty,Mac 使用者可以使用系統自帶的終端工具。然後用 ssh 指令,連接配接到你的伺服器。像這樣:
ssh [email protected]
@ 左邊的 root 是連接配接時使用的使用者的名字,@ 右邊的數字是你的伺服器的 IP 位址。這行指令的意思就是,使用 root 使用者,登入到 218.244.147.196 這台伺服器上。回車以後,會提示你輸入 root 使用者的密碼(這個密碼你可以通過執行個體自行修改)。
二、添加新使用者
添加新使用者并配置設定 Root 權限
為了安全,我們可以單獨建立一個平時操作伺服器的使用者,并且給這個使用者配置設定可以使用 Root 的權限,也就是如果需要 Root 權限,可以在指令的前面加上 sudo 擷取到 Root 使用者的權限。
添加新使用者
比如添加一個名字是ngh 的使用者,可以這樣:
adduser nhg
設定密碼
為使用者設定密碼:
passwd nhg
配置設定 Root 權限
讓我們新建立的使用者擁有 Root 使用者的權限,執行:
gpasswd -a nhg wheel
把ngh 這個使用者名換成你自己的使用者名。
用新使用者登入伺服器
ssh [email protected]
三、安裝nginx
1.更新源
sudo apt-get update
2.安裝nginx
sudo apt-get install nginx
3.檢查是否安裝成功
使用伺服器的 IP 位址,若出現Welcome To Nginx則證明安裝成功。
配置 nginx 虛拟主機
安裝完 nginx 以後,第一件想到的事應該就是去建立虛拟主機,虛拟主機允許我們在同一台伺服器上運作多個網站,我們可以為不同的域名綁定不同的目錄,通路這個域名的時候,會打開對應目錄裡面的東西。下面來看一下為 nginx 配置虛拟主機。先進入到 nginx 配置檔案目錄:
cd /etc/nginx/conf.d
建立一個新的配置檔案,比如我要為 nhg.com這個主機名建立一個虛拟主機,可以這樣:
sudo vim nhg.com.conf
把下面的配置代碼放到這個配置檔案裡:
server {
listen 80;
server_name ngh.com;
root /var/www/html/nhg.com;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.0-fpm.sock; ##這塊兒注意
fastcgi_index index.php;
include fastcgi.conf;
}
}
上面這個配置檔案支援一些的 PHP 應用,比如 WordPress,Drupal,Laravel。第一個 location 區塊可以讓 PHP 應用支援位址的重寫功能,第二個 Location 設定了讓虛拟主機可以去處理 PHP 的請求。注意這裡用了 include 指令,包含進來一個 fastcgi.conf 檔案,你要确定這個檔案存在。
你也可能會找到 fastcgi_params 這個檔案,如果沒有 fastcgi.conf 就把 fastcgi_params 這個檔案包含進來,并且在處理 php 的那個 location 區塊裡再添加一條配置:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
server_name 就是主機名,也就是跟這個虛拟主機綁定在一塊兒的域名,我事先把 nhg.com 指向了伺服器,這個虛拟主機就是為它準備的,是以,server_name 後面的東西就是 nhg.com 。緊接着 server_name 下面可以是一個 root,就是這個虛拟主機的根目錄,也就是網站所在的目錄。比如我們要把 nhg.com這個網站的檔案放在 /var/www/html/nhg.com 下面,那麼這個 root 就是這個路徑。
然後去掉 location / 裡面的 root 這行代碼。再在 index 後面加上一種索引檔案名,也就是預設打開的檔案,這裡要加上一個 index.php ,這樣通路 nhg.com 就可以直接打開 root 目錄下面的 index.php 了。稍後我們再去安裝 php 。
儲存一下,按 esc ,輸入 :wp(儲存并退出)。現在虛拟主機應該就可以使用了。主機的域名是 nhg.com,通路它的時候,打開的是 /var/www/html/nhg.com 這個目錄裡面的東西,你可以在這個目錄下放點東西。
重新開機 nginx 或者重新加載 nginx 可以讓配置檔案生效。
sudo service nginx restart
現在,打開浏覽器,輸入你為虛拟主機設定的域名,看看是否能打開你指定的目錄裡的東西。
你可以将你的代碼放到git,直接git到你的伺服器;
四、PHP 7
安裝php7.0
$ apt-get -y install php7.0-fpm php-mysql
PHP fix_pathinfo 潛在安全漏洞修複,在/etc/php/7.0/fpm/php.ini中找到
;cgi.fix_pathinfo=1
改為
cgi.fix_pathinfo=0
重新開機 php
$ sudo systemctl restart php7.0-fpm
在/etc/nginx/sites-available/default 中添加配置
server {
listen 80;
listen [::]:80;
# listen [::]:443 ssl http2;
# listen 443 ssl http2;
# include ssl.conf;
# ssl_certificate /path/to/crt;
# ssl_certificate_key /path/to/key;
root /var/www/server_domain_or_IP;
index index.html index.htm index.php;
server_name server_domain_or_IP;
location / {
try_files $uri $uri/ =404;
}
location /phpmyadmin {
index index.php;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock; // 這個
}
location ~ /\.ht {
deny all;
}
}
重新開機Nginx
$ sudo systemctl restart nginx
測試PHP是否已完成安裝配置,編輯/var/www/html/info.php
$ vi /var/www/html/info.php
添加内容
phpinfo();
?>
然後通路IP
出現PHP資訊則成功
安裝 PHP 擴充
為了可以正常運作一般的 PHP 應用,你需要再安裝一些其它的 PHP 擴充,通常你在安裝 PHP 應用,比如 WordPress,Drupal,Laravel 的時候,都會提示你缺少的 PHP 擴充。下面是一些常用的 PHP 擴充:
sudo apt-get install php70u-gd php70u-mysqlnd php70u-pdo php70u-mcrypt php70u-mbstring php70u-json php70u-opcache php70u-xml -y
五、安裝MySQL
apt-get -y install mysql-server mysql-client
安裝時候會出現紫色背景的界面設定MySQL的root賬戶的密碼,建議設定一個複雜的密碼
安裝完MySQL之後最好運作一次安全配置向導,通過該向導可以檢查root賬戶的密碼、禁止MySQL的遠端通路、移除匿名使用者和測試的資料表等等
安全配置向導指令
mysql_secure_installation
按提示操作即可
安裝 phpMyAdmin
通過 phpMyAdmin 可以友善地通過 web 操作 MySQL 資料庫,這裡同樣能用 apt-get 來安裝它
apt-get -y install phpmyadmin
安裝過程中它會有兩個選項問你的web伺服器是 Apache 還是 libhttpd ,這裡我們兩個都不是,随便選一個。
安裝好之後,phpMyAdmin 位于 /usr/share/phpmyadmin 目錄裡,我們配置 nginx 時候隻要将一個網站根目錄指向這裡就可以通路 phpMyAdmin 了,或者我們建立軟連接配接
ln -s /usr/share/phpmyadmin/ /var/www/phpmyadmin
則配制路徑到/var/www/phpmyadmin
重新開機Nginx
sudo service nginx restart