之前,我曾自己搭建過Wordpress,只不過那時(shí)候用的是第三方的虛擬主機(jī),一臺機(jī)器上可能有幾十個(gè)網(wǎng)站。那時(shí)候的虛擬機(jī)還沒做到物理層面的隔離,一個(gè)網(wǎng)站占用資源可能會導(dǎo)致所有網(wǎng)站宕機(jī)。
最近嘗試了下在阿里云ecs上搭建了獨(dú)立的wordpress,記錄下搭建的過程。
原先我想嘗試使用apache作為wordpress的容器,用nginx作為反向代理直接代理到apache。但是在我使用了apache后,發(fā)現(xiàn)了一個(gè)問題,直接使用nginx作為反向代理,轉(zhuǎn)到apache后,url偽靜態(tài)貌似無法訪問,好像需要對每一個(gè)url進(jìn)行nginx的location配置,感覺太過麻煩,就放棄了。
當(dāng)然也有可能有其他解決方法,不過我沒嘗試,后來我查詢了下nginx是可以利用第三方插件支持php的。直接利用nginx做容器也有優(yōu)點(diǎn),部署起來相對簡單,多個(gè)網(wǎng)站也可以直接通過nginx單個(gè)容器進(jìn)行部署。
1.域名購買
這個(gè)就不多講了,去域名平臺申請域名。
2.mysql安裝
安裝mysql的方法我之前已經(jīng)講過,具體可以看 這里 。安裝完成之后,我們需要為wordpress建立一個(gè)單獨(dú)的賬戶,為什么要建立一個(gè)單獨(dú)的賬戶呢?主要是為了安全考慮,如果wordpress被攻擊了,而你使用了root賬戶,那么數(shù)據(jù)庫中的所有表都會被暴露。
// 創(chuàng)建wordpress用戶,并設(shè)置密碼,密碼建議隨機(jī)生成,并且不少于8位,采用大小寫,數(shù)字,特殊字符組合 CREATE USER 'wordpress'@'%' IDENTIFIED BY 'password'; //給予wordpress這個(gè)賬戶所有的操作權(quán)限,包含 select delete update insert create alter 等 GRANT all ON wordpress.* TO 'wordpress'@'%';
權(quán)限詳細(xì)信息可以參考這里。
3.nginx安裝
nginx采用yum方式安裝,非常簡單。
安裝:
yum -y install nginx;
啟動(dòng):
systemctl start nginx.service;
兩個(gè)步驟就完成了nginx的安裝。
4.安裝php
4.1 php安裝
yum -y install php;
php安裝非常簡單,安裝完成之后,執(zhí)行以下命令查看,顯示版本,則說明安裝正確:
php -v;
4.2 php-fpm 安裝
除了php之外,我們還需要用到兩個(gè)東西,fast-cgi和php-fpm。那么這兩樣?xùn)|西是什么呢?如果想了解詳情的,可以看 這里 ,簡單的說fpm就是fastcgi的一個(gè)管理器。在此之前我一直不知道需要安裝fpm才能正確解析php文件的,折騰了很長的一段時(shí)間。
yum install php-fpm; //查看是否安裝成功 php-fpm -v; 啟動(dòng)php-fpm systemctl start php-fpm;
fpm默認(rèn)占用的是9000端口。
5.安裝wordpress
wget https://wordpress.org/latest.tar.gz; //解壓 tar -xzf latest.tar.gz -C /var/www/html;
解壓完成之后,找到:/wordpress/wp-config-sample.php文件,修改數(shù)據(jù)庫名稱、用戶名、密碼,字段如下:
// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', '你的數(shù)據(jù)庫名稱'); /** MySQL database username */ define('DB_USER', '你的用戶名'); /** MySQL database password */ define('DB_PASSWORD', '你的密碼'); /** MySQL hostname */ define('DB_HOST', '你的host');
修改完成之后,把wp-config-sample.php的文件名改為:wp-config.php。
6.配置nginx
以下是我的配置,可以參考:
# * Official English Documentation: http://nginx.org/en/docs/ # * Official Russian Documentation: http://nginx.org/ru/docs/ upstream php { #server unix:/tmp/php-cgi.socket; #指向到fpm的默認(rèn)9000端口, server 127.0.0.1:9000; } server { listen 80 ; listen [::]:80 ; server_name www.domain.com; root /web/www.domain.com/; index index.php; location ~ \.php$ { #NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini include fastcgi.conf; fastcgi_intercept_errors on; fastcgi_pass php; } # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; }
7.安全設(shè)置
世界上大概有20%左右的網(wǎng)站用的是wordpress系統(tǒng),這也導(dǎo)致wordpress成為了黑客的攻擊對象,安全問題不容忽視,無論對于個(gè)人還是企業(yè)。對于普通使用者有沒有簡單的方法讓我們快速提升安全防護(hù)呢?我查看了幾款安全插件,有這么一款插件可以幫助我們提升安全攻略,插件名是All In One WP Security & Firewall 。這款插件相對普通用戶來說顯得簡單易用。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
標(biāo)簽:烏海 紅河 鎮(zhèn)江 股票 岳陽 四川 臨沂
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《如何用nginx配置wordpress的方法示例》,本文關(guān)鍵詞 如,何用,nginx,配置,wordpress,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。