项目:部署LNMP动态网站
部署LNMP動態網站
問題
部署LNMP動態網站,實現以下目標:
- 安裝LNMP平臺相關軟件
- 配置Nginx實現動靜分離
- 配置數據庫,創建賬戶與密碼
- 上線Wordpress代碼
- 使用Wordpress后臺管理界面,調整Wordpress版式
方案
實驗拓撲如圖所示,做具體實驗前請先配置好環境
步驟
- 步驟一:安裝部署LNMP軟件
備注:mariadb(數據庫客戶端軟件)、mariadb-server(數據庫服務器軟件)、mariadb-devel(其他客戶端軟件的依賴包)、php(解釋器)、php-fpm(進程管理器服務)、php-mysql(PHP的數據庫擴展包)。
1)安裝軟件包
2)啟動服務(nginx、mariadb、php-fpm)
[root@centos7 ~]# /usr/local/nginx/sbin/nginx #啟動Nginx服務 [root@centos7 ~]# echo "/usr/local/nginx/sbin/nginx" >> /etc/rc.local [root@centos7 ~]# chmod +x /etc/rc.local [root@centos7 ~]# ss -utnlp | grep :80 #查看端口信息 [root@centos7 ~]# systemctl start mariadb #啟動mariadb服務器 [root@centos7 ~]# systemctl enable mariadb [root@centos7 ~]# systemctl start php-fpm #啟動php-fpm服務 [root@centos7 ~]# systemctl enable php-fpm附加知識:systemd!!!
源碼安裝的軟件默認無法使用systemd管理,如果需要使用systemd管理源碼安裝的軟件需要手動編寫服務的service文件(編寫是可以參考其他服務的模板文件)。以下是nginx服務最終編輯好的模板。
Service文件存儲路徑為/usr/lib/system/system/目錄。
[root@centos7 ~]# vim /usr/lib/systemd/system/nginx.service [Unit] Description=The Nginx HTTP Server #描述信息 After=network.target remote-fs.target nss-lookup.target #指定啟動nginx之前需要其他的其他服務,如network.target等 [Service] Type=forking #Type為服務的類型,僅啟動一個主進程的服務為simple,需要啟動若干子進程的服務為forking ExecStart=/usr/local/nginx/sbin/nginx #設置執行systemctl start nginx后需要啟動的具體命令. ExecReload=/usr/local/nginx/sbin/nginx -s reload #設置執行systemctl reload nginx后需要執行的具體命令. ExecStop=/bin/kill -s QUIT ${MAINPID} #設置執行systemctl stop nginx后需要執行的具體命令. [Install] WantedBy=multi-user.target3)修改Nginx配置文件,實現動靜分離
修改配置文件,通過兩個location實現動靜分離,一個location匹配動態頁面,一個loation匹配其他所有頁面。
注意修改默認首頁為index.php!
[root@centos7 ~]# vim /usr/local/nginx/conf/nginx.conf ...省略部分配置文件內容... location / {root html;index index.php index.html index.htm;} ...省略部分配置文件內容... location ~ \.php$ {root html;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;include fastcgi.conf;} ...省略部分配置文件內容... [root@centos7 ~]# /usr/local/nginx/sbin/nginx -s reload4)配置數據庫賬戶與權限
為網站提前創建一個數據庫、添加賬戶并設置該賬戶有數據庫訪問權限。
[root@centos7 ~]# mysql MariaDB [(none)]> create database wordpress character set utf8mb4; MariaDB [(none)]> grant all on wordpress.* to wordpress@'localhost' identified by 'wordpress'; MariaDB [(none)]> grant all on wordpress.* to wordpress@'192.168.2.11' identified by 'wordpress'; MariaDB [(none)]> flush privileges; MariaDB [(none)]> exit提示:在mysql和mariadb中%代表匹配所有,這里是授權wordpress用戶可以從任意主機連接數據庫服務器,生產環境建議僅允許特定的若干主機訪問數據庫服務器。
- 步驟二:上線wordpress代碼
1)上線PHP動態網站代碼
[root@centos7 ~]# yum -y install unzip [root@centos7 ~]# unzip wordpress.zip [root@centos7 ~]# cd wordpress [root@centos7 wordpress]# tar -xf wordpress-5.0.3-zh_CN.tar.gz [root@centos7 wordpress]# cp -r wordpress/* /usr/local/nginx/html/ [root@centos7 wordpress]# chown -R apache.apache /usr/local/nginx/html/提示:動態網站運行過程中,php腳本需要對網站目錄有讀寫權限,而php-fpm默認啟動用戶為apache。
2)初始化網站配置(使用客戶端訪問web服務器IP)
[root@client ~]# firefox http://192.168.2.11/第一次訪問服務器會自動進入config配置頁面,效果如圖所示。
開發人員在寫代碼的時候并不知道未來數據庫服務器的IP、端口、數據庫名稱、賬戶等信息,該配置頁面主要的作用就是動態配置數據庫信息,根據前面步驟配置的數據庫信息填空即可,效果如圖所示。
點擊提交即可完成數據庫的初始化工作,php動態腳本會自動在wordpress數據庫中創建若干數據表,后期網站的數據都會寫入對并的數據表中。效果如圖所示。
第一次使用Wordpress需要給你的網站設置基本信息,如網站標題、網站管理員賬戶與密碼等信息,配置完成后點擊安裝wordpress即可,如圖所示。
- 步驟三:網站后臺管理
1)訪問192.168.2.11服務器,進入并熟悉后臺管理界面
通常情況下,開發人員會開發一個后臺管理界面,當代碼上線后,普通用戶就可以管理和配置網站頁面(需要使用網站的超級管理員身份才可以進入后臺界面)。
[root@client ~]# firefox http://192.168.2.11訪問首頁后點擊如圖所示的登陸菜單,輸入賬戶和密碼進入后臺管理界面。
或者直接在地址欄中輸入后臺管理界面的具體URL。
輸入管理員用戶名和密碼,效果如圖1所示。登陸后臺管理界面效果如圖2所示。
2)修改網站主題
Wordpress主題會影響網站的整體外觀,我們可以使用默認自帶的若干主題。
后臺修改網站主題的菜單為<外觀>–<主題>,使用默認主題,點擊啟用即可,如圖所示。
如果需要更多更新的主題,則可以去官網下載更多新的主題,默認下載的主題格式為zip壓縮包。
主題鏈接在此!
將主題下載到服務器本地后,可以在后臺管理界面添加主題,<外觀>–<主題>–<添加>–<上傳主題>–<瀏覽>–<現在安裝>,如圖所示。
部署新主題的另一種方法是,直接將下載的zip主題包拷貝到wordpress代碼的特定目錄,如/usr/local/nginx/html/wp-content/themes/目錄,然后使用unzip解壓主題即可,效果如圖所示。
3)修改網站小工具
小工具是首頁中的各種常用功能菜單,可以添加和刪除。
首先可以刪除一些不需要的小工具,如最近文章、最近評論等,如圖所示。
Right、Legt、Header代表的是小工具的位置,使用鼠標拖動小工具可以移動位置,如圖所示。
可以通過小工具為網站添加導航功能,使用鼠標將導航菜單拖動到合適的位置即可,默認沒有導航菜單,需要自定義創建,如圖所示。
創建導航菜單后,可以繼續創建頁面,并將頁面添加到導航菜單中。<頁面>–<新建頁面>即可添加新的頁面,如圖1和圖2所示。新的頁面內容可以是段落、圖像、列表、引語等。
新的頁面添加完成后,可以將其添加到菜單中使用,如圖1所示。訪問網站首頁即可查看導航菜單的效果,如圖2所示。
4)擴展其他問題
其他有關wordpress的使用方法與技巧,可以參考官方網站的文檔資料文檔鏈接在這里!
總結
以上是生活随笔為你收集整理的项目:部署LNMP动态网站的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 服务器硬件
- 下一篇: 项目:网站架构,集群