第一段:刪除分類下的文章數(shù)量。
創(chuàng)新互聯(lián)堅信:善待客戶,將會成為終身客戶。我們能堅持多年,是因為我們一直可值得信賴。我們從不忽悠初訪客戶,我們用心做好本職工作,不忘初心,方得始終。10余年網(wǎng)站建設經驗創(chuàng)新互聯(lián)是成都老牌網(wǎng)站營銷服務商,為您提供網(wǎng)站建設、成都做網(wǎng)站、網(wǎng)站設計、H5技術、網(wǎng)站制作、品牌網(wǎng)站制作、成都微信小程序服務,給眾多知名企業(yè)提供過好品質的建站服務。
delete
from
wp_posts?
using?
wp_posts,
wp_term_relationships,
wp_term_taxonomy?
where?
wp_posts.id=wp_term_relationships.object_id?
and?
wp_term_relationships.term_taxonomy_id?=?wp_term_taxonomy.term_taxonomy_id?
and?
wp_term_relationships.term_taxonomy_id?=?18
第二段:刪除分類信息。
delete?FROM?`wp_term_relationships`?where?term_taxonomy_id=18
注意:1,這是默認的wordpress 數(shù)據(jù)庫簽字,如果修改了wordpress表前綴的話,記得將“wp_”換成你自己的表前綴。2,term_taxonomy_id=18,里面的18為分類的ID,記得替換成你要刪除分類的ID。
最簡單的方法,獲取分類id
?php
// 將以下cat_ID改成你的分類ID即可
echo get_category(cat_ID)-count;
?
當前環(huán)境快照
可選:在繼續(xù)本教程之前,你可能想為你當前環(huán)境創(chuàng)建快照。本教程中快照有兩個目的:
如果發(fā)生錯誤可以回滾到可工作環(huán)境
對原始服務器做一次性復制,而不需要再次安裝和配置PHP以及Nginx
注意:為環(huán)境創(chuàng)建快照需要短暫的關閉VPS
為wordpress-1和mysql-1兩個VPS做一個快照。
現(xiàn)在有了快照以后,我們就可以準備好繼續(xù)搭建環(huán)境中其他部分了。
創(chuàng)建第二臺web應用服務器
現(xiàn)在我們需要創(chuàng)建第二個VPS來分擔原始應用服務器的負載。有兩種選擇:
從之前的快照wordpress-1中創(chuàng)建一個新的VPS
從頭開始重新創(chuàng)建一個VPS并且設置該VPS和wordpress-1有相同的軟件和配置
不論那種方法,如果網(wǎng)絡可用,一定要確保勾選個人網(wǎng)絡。個人網(wǎng)絡是本教程中所有VPS都需要的。
如果沒有個人網(wǎng)絡選項,用你的VPS的公開IP來替代內網(wǎng)IP。需要注意的是,當使用公網(wǎng)IP在應用服務器和數(shù)據(jù)庫服務器之間傳輸敏感數(shù)據(jù)比如非加密的數(shù)據(jù)庫密碼,并不是一個很好的選擇,因為這些信息需要在互聯(lián)網(wǎng)上傳輸。
方式一:使用快照創(chuàng)建新的VPS
創(chuàng)建一個新的VPS,叫做wordpress-2,使用你為wordpress-1做的快照來做。
如果你選擇的這種方式,可以跳過“方式二”直接去看“同步web應用文件”小節(jié)。
方式二:從頭創(chuàng)建一個新的VPS
這種方式和“方式一”可二選一。
如果你想從頭設置wordpress-2服務器,而不是使用wordpress-1的快照,那么你要確保安裝的軟件相同。如果你忘了如何安裝和設置原始wordpress服務器,可以參考預備知識章節(jié)中如何設置web服務器小節(jié)。
快速參考,這里是一個相關軟件和配置文件的列表,需要你來安裝或復制:
軟件方面:
Mysql客戶端
Nginx
PHP
安裝完這些軟件后,在你的wordpress-2服務器上運行一下命令:
sudo apt-get update
sudo apt-get install mysql-client
sudo apt-get install nginx php5-fpm php5-mysql
原始應用服務器上需要創(chuàng)建或編輯的配置文件:
/etc/php5/fpm/php.ini
/etc/php5/fpm/pool.d/
/etc/nginx/sites-available/example.com
/etc/nginx/sites-enabled/example.com
當你修改完配置文件后,不要忘了沖洗PHP和Nginx,可以使用一下命令:
sudo service php5-fpm restart
sudo service nginx restart
在新服務器的安裝和配置完成以后,我們需要同步wordpress應用文件。
同步Web應用文件
在應用程序可以進行負載均衡之前,我們需要確保新應用服務器的應用程序文件和原始wordpress服務器的文件是同步的。這些文件的位置也就是你安裝wordpress的位置,以及其他的一些文件。除了wordpress運行所需要的配置文件之外,上傳的文件和通過wordpress接口安裝的插件的安裝文件和這些插件上傳的文件都需要去同步。在預備知識文章中,我們將wordpress安裝在/var/www/example.com路徑下--我們將
在所有的例子中都會使用這個路徑,但是你需要將這個路徑替換為你wordpress的實際安裝路徑。
有很多方法在服務器之間同步文件--NFS或者glusterFS都是不錯的選擇。我們將使用glusterFS來滿足我們所有的同步需求,因為它允許每個應用服務器來存儲應用程序文件的副本,同時也會保持文件系統(tǒng)的一致性。下圖是我們共享存儲方案的概念圖:
如果你對本小節(jié)中使用的glusterFS完全不熟悉,請參考這個GlusterFS教程(),這是本小節(jié)的基礎。
注意:下面的內容將經常在wordpress-1和wordpress-2服務器之間跳轉,請確保在正確服務器上運行響應命令,否則你將遇到麻煩。
編輯hosts文件
如果你有一個內部DNS,而且這個DNS記錄了你VPS的內部IP地址,那么你可以跳過這一步直接配置并執(zhí)行glusterFS相關命令。
否則,需要在wordpress-1和wordpress-2上編輯/etc/hosts文件:
sudo vi /etc/hosts
增加以下兩行,將紅色字替換為你應用服務器的各自ip:
wordpress_1_private_IP wordpress-1
wordpress_2_private_IP wordpress-2
保存并退出。
安裝GlusterFS并配置一個冗余盤
在wordpress-1和wordpress-2上使用apt-get命令安裝glusterFS服務端軟件:
sudo apt-get install glusterfs-server
在wordpress-1上,運行以下命令來和wordpress-2保持對等:
sudo gluster peer probe wordpress-2
在wordpress-2上,運行以下命令來和wordpress-1保持對等:
sudo gluster peer probe wordpress-1
在wordpress-1和wordpress-2上,創(chuàng)建路徑用來存儲glusterFS所管理的文件,運行:
sudo mkdir /gluster-storage
在wordpress-1上,創(chuàng)建glusterFS副本,我們稱作volume1,glusterFS 會將它存放在/gluster-storage中的數(shù)據(jù)保存在你所有的應用服務器上,運行:
sudo gluster volume create volume1 replica 2 transport tcp wordpress-1:/gluster-storage wordpress-2:/gluster-storage force
預期輸出以下結果:
volume create: volume1: success: please start the volume to access data
再次在wordpress-1上,運行一下命令來啟動剛剛創(chuàng)建的glusterFS卷,在volume1上運行:
sudo gluster volume start volume1
預期輸出以下結果:
volume start: volume1: success
在wordpress-1上,如果你想查看剛創(chuàng)建和啟動的glusterFS卷的信息,運行:
sudo gluster volume info
你需要明白的是目前有兩個glusterFS“同盟”,每個對應一個wordpress服務器。
現(xiàn)在我們已經運行了一個glusterFS盤,為了能夠使用它來同步文件,我們需要將該盤掛載。
掛載共享存儲
首先掛載wordpress-1上的文件系統(tǒng)。
在wordpress-1上,修改fstab文件來使共享文件系統(tǒng)可以隨機啟動:
sudo vi /etc/fstab
添加以下行到fstab來將/storage-pool目錄作為掛載點:
wordpress-1:/volume1 /storage-pool glusterfs defaults,_netdev 0 0
保存并退出。
在wordpress-1上,現(xiàn)在將glusterFS盤掛載至/storage_pool文件系統(tǒng):
sudo mkdir /storage-pool
sudo mount /storage-pool
在wordpress-1上掛載共享盤/storage-pool后,你可以運行df -h命令來列出當前已掛載的文件。接下來,我們將使用類似的流程來掛載wordpress-2上的共享文件系統(tǒng)。
在wordpress-2上,編輯fstab來使共享系統(tǒng)隨機啟動:
sudo vi /etc/fstab
添加以下行到fstab來將/storage-pool目錄作為掛載點:
wordpress-2:/volume1 /storage-pool glusterfs defaults,_netdev 0 0
在wordpress-2上,現(xiàn)在將glusterFS盤掛載至/storage_pool文件系統(tǒng):
sudo mkdir /storage-pool
sudo mount /storage-pool
現(xiàn)在,所有在/storage-pool文件系統(tǒng)中創(chuàng)建、修改或刪除的文件都會在兩個wordpress服務器之間同步,即使當其中一個服務器暫時故障時也會同步。
將wordpress文件移至共享存儲
下一步是將wordpress-1的wordpress文件移動到共享存儲中。請將紅色字體替換為你自己的值。/var/www/example.com表示wordpress文件的位置(nginx也會在這里查找文件),example.com本身只是根目錄。
在wordpress-1上,運行以下命令來移動wordpress文件至共享文件系統(tǒng)/storage-pool:
sudo mv /var/www/example.com /storage-pool/
sudo chown www-data:www-data /storage-pool/example.com
接下來,你可能想創(chuàng)建一個符號鏈接來指向wordpress在共享文件中位置:
sudo ln -s /storage-pool/example.com /var/www/example.com
目前wordpress文件放在共享文件系統(tǒng)/storage-pool中,這些文件接受Nginx訪問他們的原始路徑/var/www/example.com。
將新的應用服務器指向共享存儲區(qū)
下一步是我們在新web應用程序服務器上創(chuàng)建一個符號鏈接指向WordPress文件共享文件系統(tǒng)。
如果你選擇使用快照創(chuàng)建wordpress-2,在wordpress-2上運行以下命令:
sudo rm /var/www/example.com
sudo ln -s /storage-pool/example.com /var/www/example.com
如果你從頭創(chuàng)建wordpress-2服務器,在wordpress-2上運行以下命令:
sudo mkdir -p/var/www
sudo ln -s/storage-pool/example.com /var/www/example.com
這就是wordpress應用的文件同步。接下來是使新服務器wordpress-2連接數(shù)據(jù)庫。
創(chuàng)建一個新的數(shù)據(jù)庫用戶
由于Mysql使用用戶名和源主機來區(qū)別用戶,我們需要創(chuàng)建一個新的wordpress用戶來連接新的服務器wordpress-2。
在數(shù)據(jù)庫服務器(mysql-1)上連接至MYSQL控制臺:
mysql -u root -p
在一下mysql語句中,將紅色字體替換為你真實環(huán)境的參數(shù):
wordpress用戶:Mysql中wordpress用戶。確保和已經存在的用戶名保持一致。
wordpress2private_IP:wordpress-2服務器的內部ip。
密碼:wordpress用戶的Mysql數(shù)據(jù)庫密碼。去報和已經存在的用戶名密碼保持一致。
在wordpress-2上mysql控制臺中運行以下命令:
CREATE USER 'wordpressuser'@'wordpress_2_private_IP' IDENTIFIED BY 'password';
GRANT SELECT,DELETE,INSERT,UPDATE ON wordpress.* TO 'wordpressuser'@'wordpress_2_private_IP';
FLUSH PRIVILEGES;
現(xiàn)在第二臺服務器wordpress-2就可以登錄mysql服務器mysql-1了。
還沒負載均衡
注意,有兩個應用服務器在運行但是他們并沒有被負載均衡,因為每個服務器必須通過他們的外網(wǎng)IP來訪問。而我們希望能夠通過相同的URL訪問該應用程序,如,以及在兩臺服務器之間做流量分配。
安裝HAProxy
在內網(wǎng)中創(chuàng)建一個新的VPS,在本教程中,我們叫做haproxy-www。
在haproxy-www服務器上使用apt-get命令來安裝HAProxy:
sudo apt-get update
sudo apt-get install haproxy
我們需要使用HAProxy初始化腳本來啟動和停止HAProxy:
sudo vi /etc/default/haproxy
將ENABLED值改為1來開啟初始化腳本:
ENABLED=1
保存并退出。
現(xiàn)在HAProxy可以在服務器上被啟動和停止。當然,你現(xiàn)在可以使用命令來控制HAProxy了。讓我們來檢查下它是否運行:
/etc/init.d$ sudo service haproxy status
輸出結果:
haproxy not running
HAProxy沒有運行。這是對的,因為它首先需要配置。接下來,讓我們來配置HAProxy。
HAProxy配置
HAProxy的配置文件主要分為以下兩部分:
Global:設置進程級參數(shù)
Proxies:包括默認、監(jiān)聽、前端、后端參數(shù)
Global配置
所有的HAProxy配置都需要在HAProxy服務器haproxy-www上進行。
首先,復制一份默認的haproxy.cfg文件:
cd /etc/haproxy; sudo cp haproxy.cfg haproxy.cfg.orig
現(xiàn)在,使用文本編輯器打開haproxy.cfg文件:
sudo vi /etc/haproxy/haproxy.cfg
你將看到有兩部分已經被定義:global和defaults。首先,我們將對一些默認參數(shù)做一些修改。
在默認情況下,找到一下兩行:
mode http
option httplog
將其中http替換為tcp,結果如下:
mode tcp
option tcplog
選擇tcp作為HAProxy執(zhí)行第4層負載平衡模式配置。在我們的例子中,這意味著一個特定的IP地址和端口中所有傳入的流量將被轉發(fā)到同一后端。如果你不熟悉這一概念,請閱讀在HAProxy介紹中的負載均衡小節(jié)。
先不要關閉配置文件,我們將加上proxy配置。
代理配置(Proxyies)
我們首先要做的事情是增加前端。對一個基本的4層負載均衡設置,前端監(jiān)聽一個特定的IP地址和端口的流量,并將傳入流量轉發(fā)到一個指定的后端。
在配置文件的末尾,讓我們添加上我們的前端:www。請將haproxy_www_public_IP替換為你自己的haproxy-www服務器IP地址:
frontend www
bind haproxy_www_public_IP:80
default_backend wordpress-backend
以下是對上面的前端配置代碼片段中的每一行是什么意思做出解釋:
frontend www:指定了一個名為“www”的前端,我們將用它來處理傳入www的流量
bind haproxywwwpublic_IP:80:將haproxywwwpublic_IP替換為你haproxy-www服務器的外網(wǎng)ip。這是告訴haproxy這個前端將處理這個ip和端口上的流量。
default_backend wordpress-backend:這指定所有這些前端的流量將會轉發(fā)到wordpress-backend,這在下一步我們將定義
配置完前端后,繼續(xù)將以下后端配置加入文件末尾:
backend wordpress-backend
balance roundrobin
mode tcp
server wordpress-1 wordpress_1_private_IP:80 check
server wordpress-2 wordpress_2_private_IP:80 check
以下是對上面每行配置的解釋:
backend wordpress-backend:指定了一個名為“wordpress-backend”的后端
balance roundrobin:指定該后端將使用“輪循”的負載均衡算法
server wordpress-1 ...:指定了一個名為“wordpress-1”的后端服務器,內外nagIP(你必須替換為你自己服務器ip)和端口監(jiān)聽,在這個例子中為80端口。“check”選項表示使負載均衡器對這個服務器定期進行健康檢查
server wordpress-2 ...:指定了一個名為“wordpress-2”的后端
保存并退出。
現(xiàn)在HAProxy可以啟動了,但是讓我們先開啟日志功能。
開始HAProxy日志功能
啟用HAproxy日志功能非常簡單,首先編輯rsyslog.conf文件:
sudo vi /etc/rsyslog.conf
接著找到一下兩行,取消這兩行注釋來開啟UDP日志功能:
$ModLoad imudp
$UDPServerRun 514
$UDPServerAddress 127.0.0.1
現(xiàn)在重啟rsyslog來使新配置生效:
sudo service rsyslog restart
HAProxy日志功能現(xiàn)在已經開啟了!日志文件將在HAProxy啟動后被放在/var/log/haproxy.log。
啟動HAProxy和PHP/Nginx
在haproxy-www服務器上,啟動HAProxy來使配置生效:
sudo service haproxy restart
取決于你如何設置您的新應用程序服務器,您可能需要重新啟動你的WordPress應用程序通過重啟PHP和Nginx。
在wordpress-2服務器上,重啟PHP和Nginx:
sudo service php5-fpm restart
sudo service nginx restart
現(xiàn)在WordPress應該運行在兩個應用程序服務器,它們是負載均衡的。但仍有最后一個配置需要更改。
更新WordPress配置
現(xiàn)在你的WordPress應用程序的URL已經改變,我們必須在WordPress更新幾個設置。
在wordpress服務器,編輯你的wp-config.php文件。它位于WordPress的安裝位置(在本教程中,它是安裝在/var/www/example.com但你安裝可能會有所不同):
cd /var/www/example.com; sudo vi wp-config.php
找到"DB_NAME"所在行;增加以下配置在該行之上,并且替換紅色的值:
define('WP_SITEURL', '');
define('WP_HOME', '');
保存并退出。
現(xiàn)在WordPress url配置為指向您的負載平衡器,而不是只有最初的WordPress服務器,而且在當你試著訪問wp-admin控制臺時發(fā)揮作用。
負載均衡完成
您的web應用程序服務器現(xiàn)在是負載均衡的。你的負載平衡WordPress現(xiàn)在可以訪問您的用戶通過負載均衡器haproxy-www的外網(wǎng)IP地址或域名訪問!
本文標題:wordpress指定卷 wordpress怎么自定義頁面
文章源于:http://jinyejixie.com/article34/ddcddpe.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計、手機網(wǎng)站建設、商城網(wǎng)站、、標簽優(yōu)化、移動網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)