00.課程介紹部分
1. nginx程序網(wǎng)站頁(yè)面跳轉(zhuǎn)練習(xí)說(shuō)明
2. LNMP架構(gòu)介紹說(shuō)明
3. LNMP架構(gòu)部署安裝
4. LNMP架構(gòu)工作原理
5. LNMP架構(gòu)配置過(guò)程
6. 搭建動(dòng)態(tài)資源網(wǎng)站頁(yè)面
7. 數(shù)據(jù)庫(kù)數(shù)據(jù)遷移方法
8. 實(shí)現(xiàn)圖片附件數(shù)據(jù)統(tǒng)一存儲(chǔ)
01.課程知識(shí)回顧
1.location的配置方法
1.作用:匹配指定的URI信息,可以根據(jù)訪問(wèn)不同的URI信息,做出不同處理方案
2.如何匹配URI信息:
= 精確匹配指定URI信息
~ 模糊匹配指定URI信息(區(qū)分信息大小寫(xiě))
~* 模糊匹配指定URI信息(不區(qū)分大小寫(xiě))
^~ 進(jìn)行優(yōu)先匹配/不識(shí)別擴(kuò)展正則信息
/ 默認(rèn)匹配
/xx/ 精準(zhǔn)匹配目錄
3.return指定代碼跳轉(zhuǎn) 根據(jù)不同狀態(tài)碼做出相應(yīng)處理
location / {
return 301 http://www.oldboy.com/oldboy.jpg
}
總結(jié):有多個(gè)location需要有個(gè)默認(rèn)location
指定URI信息必須存在
當(dāng)URI信息不存在時(shí),可以用return跳轉(zhuǎn)
2.rewrite跳轉(zhuǎn)的配置方法
1.原理:用戶瀏覽器 屬于域名地址A -- web服務(wù)器 -- 自動(dòng)處理 --訪問(wèn)域名地址信息B
2.跳轉(zhuǎn)的四種方式
last 請(qǐng)求發(fā)送過(guò)去后跳轉(zhuǎn)成功會(huì)重新發(fā)起訪問(wèn)(URI信息不改變)
break 用戶訪問(wèn)會(huì)直接得到跳轉(zhuǎn)后的信息 (URI信息不變)
redirect(臨時(shí)跳轉(zhuǎn)) 將地址url/uri信息進(jìn)行跳轉(zhuǎn)變化
permanent(永久跳轉(zhuǎn)) 將地址url/uri信息進(jìn)行跳轉(zhuǎn)變化
臨時(shí)跳轉(zhuǎn):不會(huì)讓瀏覽器記錄跳轉(zhuǎn)信息 (URI信息跳轉(zhuǎn)經(jīng)常用)
永久跳轉(zhuǎn):讓瀏覽器記錄跳轉(zhuǎn)信息 (URL信息跳轉(zhuǎn)經(jīng)常用)
02. LNMP架構(gòu)說(shuō)明
LNMT: linux nginx mysql tomcat
LNMP: linux nginx mysql php/python
LAMP: linux apache mysql php
作用: 可以使用架構(gòu)處理動(dòng)態(tài)訪問(wèn)請(qǐng)求
03. LNMP架構(gòu)部署過(guò)程
Linux :
1) 系統(tǒng)安全服務(wù)需要關(guān)閉 selinux iptables
2) 確認(rèn)系統(tǒng)/tmp目錄權(quán)限 1777
nginx :
1) 安裝yum官方源nginx程序
mysql/mariadb:
1) 安裝部署maraidb
# 下載安裝數(shù)據(jù)庫(kù)程序軟件
yum install mariadb-server mariadb -y
# 啟動(dòng)數(shù)據(jù)庫(kù)程序服務(wù)進(jìn)程
systemctl start mariadb.service
systemctl enable mariadb.service
啟動(dòng)服務(wù)異常: 無(wú)法啟動(dòng)服務(wù)
原因: 服務(wù)配置文件不正確
\cp /usr/share/mysql/my-small.cnf /etc/my.cnf
數(shù)據(jù)庫(kù)特殊的管理命令: SQL語(yǔ)句(庫(kù) -- 表 -- 列/行(字段-數(shù)據(jù)信息))
show databases; --- 查看所有數(shù)據(jù)庫(kù)信息
use 數(shù)據(jù)庫(kù)名稱; --- 切換數(shù)據(jù)庫(kù)
show tables; --- 查看庫(kù)中所有表信息
select * from user;--- 查看表中的數(shù)據(jù)信息
數(shù)據(jù)庫(kù)服務(wù)設(shè)置登錄密碼信息
mysqladmin -uroot password "oldboy123" --- 設(shè)置密碼或者修改密碼
mysql -uroot -poldboy123
php:
作用:解析動(dòng)態(tài)請(qǐng)求的服務(wù)
PHP服務(wù)部署 http://php.net/
# 解決yum安裝軟件沖突問(wèn)題
yum remove php-mysql php php-fpm php-common
# 準(zhǔn)備yum安裝軟件擴(kuò)展源信息
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
更新yum源之后,新生成的文件信息:
webtatic-archive.repo/webtatic.repo/webtatic-testing.repo
epel.repo.rpmnew/epel-testing.repo
# 利用yum安裝PHP相關(guān)軟件信息
yum install -y php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-gd php71w-mcrypt php71w-mbstring php71w-pdo php71w-xml php71w-fpm php71w-mysqlnd php71w-opcache php71w-pecl-memcached php71w-pecl-redis php71w-pecl-mongodb
# 修改php服務(wù)進(jìn)程管理用戶信息(建議修改的用戶和nginx worker進(jìn)程用戶一致)
vim /etc/php-fpm.d/www.conf
8 user = www
10 group = www
# 啟動(dòng)運(yùn)行php-fpm程序
04. LNMP架構(gòu)工作原理
參見(jiàn)圖示
05. LNMP架構(gòu)配置過(guò)程
第一個(gè)歷程: 建立nginx--php通訊過(guò)程
1) 編寫(xiě)nginx配置
server {
listen 80;
server_name blog.oldboy.com;
location / {
root /html/blog;
index index.php index.html;
}
location ~ \.php$ {
root /html/blog;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
2) 進(jìn)行動(dòng)態(tài)訪問(wèn)測(cè)試
vim test_phpinfo.php
<?php
phpinfo();
?>
第二個(gè)歷程: php + mariadb建立聯(lián)系 編寫(xiě)代碼信息
vim test_mysql.php
<?php
$servername = "localhost";
$username = "root";
$password = "oldboy123";
//$link_id=mysql_connect('主機(jī)名','用戶','密碼');
//mysql -u用戶 -p密碼 -h 主機(jī)
$conn = mysqli_connect($servername, $username, $password);
if ($conn) {
echo "mysql successful by root !\n";
}else{
die("Connection failed: " . mysqli_connect_error());
}
?>
瀏覽器訪問(wèn): blog.oldboy.com/test_mysql.php
06. 部署搭建動(dòng)態(tài)網(wǎng)站頁(yè)面
第一個(gè)歷程: 下載獲取動(dòng)態(tài)網(wǎng)站代碼信息
博客網(wǎng)站開(kāi)源代碼: wordpress --- blog.oldboy.com
代碼下載地址: https://cn.wordpress.org/download/
論壇網(wǎng)站開(kāi)源代碼: discuz --- bbs.oldboy.com
代碼下載地址: https://www.discuz.net/thread-3796882-1-1.html
官方網(wǎng)站開(kāi)源代碼: dedecms/phpcms --- www.oldboy.com
phpcms http://www.phpcms.cn/html/download/phpcms/#content
dedecms
知乎網(wǎng)站開(kāi)源代碼: wecenter --- zhihu.oldboy.com
第二個(gè)歷程: 將代碼信息進(jìn)行上傳/修改代碼文件權(quán)限
chown -R www.www /html/blog/
第三個(gè)歷程: 進(jìn)行網(wǎng)站頁(yè)面初始化/和網(wǎng)站數(shù)據(jù)庫(kù)服務(wù)建立連接
創(chuàng)建數(shù)據(jù)庫(kù)信息:
create database wordpress;
創(chuàng)建管理數(shù)據(jù)庫(kù)用戶信息:
grant all on wordpress.* to 'wordpress'@'localhost' identified by 'oldboy123';
select user,host from mysql.user;
07. 課程知識(shí)總結(jié):
1. nginx 地址跳轉(zhuǎn)功能 uri/url
2. LNMP架構(gòu)部署和配置過(guò)程
3. 利用LNMP架構(gòu)搭建動(dòng)態(tài)網(wǎng)站
作業(yè):
01. 總結(jié)數(shù)據(jù)庫(kù)常用的SQL語(yǔ)句 不用分享
02. php7.1程序服務(wù)如何編譯安裝
03. 下載一個(gè)大小超過(guò)1M主題壓縮包, 進(jìn)行修改主題
vim /etc/nginx/conf.d/blog.conf
client_max_body_size 2m;
04. 負(fù)載均衡服務(wù)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。