Centos7.2 搭建Lamp服務器以及遷移WordPress個人博客詳細過程


其實自己的博客搭了有段時間了,但是由於自己不太確定是不是一定要用wd的框架,以及實驗室公網服務器的不穩定,就一直荒廢着。

今天偶然間看到了騰訊雲對於學生的優惠活動,畢業之前每月只要8元的雲服務器(就算是打一波廣告吧),果斷認證並申請了一台。

下面寫一個詳細的搭建和遷移教程,然后我會慢慢把cnblog的技術文遷移過來,並且也會常寫一些心情隨筆,畢竟還是想做一個生活豐富程序員。

環境介紹

Tencent cloud CentOS 7 x64, 無現成LAMP, 需自己安裝配置。 

一、下面是lamp詳細的安裝過程:

 

基於Linux的PHP環境搭建

可以先用命令查看系統是否安裝了Apache(或者其他軟件,不過估計都沒有,是個裸機。。。)

rpm -qa | grep httpd

 

安裝Apache、PHP、Mysql、連接Mysql數據庫的包:

yum -y install httpd 

yum -y install php 

yum -y install php-fpm

yum -y install mysql

yum -y install mysql-server

yum -y install php-mysql

除了mysql-server其他都安裝成功

錯誤:No package mysql-server available.

Package php-mysql-5.4.16-36.el7_1.x86_64 already installed and latest version

Nothing to do

查找原因是因為CentOS 7 版本將MySQL數據庫軟件從默認的程序列表中移除,用mariadb代替了,有兩種解決方案,一是安裝mariadb,二是從官網下載mysql-server.因為對mariadb不熟悉,所以我采用了第二種解決方案。

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

rpm -ivh mysql-community-release-el7-5.noarch.rpm

yum install mysql-community-server

然后需要確定,輸入y回車即可

Is this ok[y/d/N]:y

接下來等待下載,需要確認的輸入y回車即可

成功!

接下來安裝常用擴展包

安裝Apache擴展包

yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql 

安裝PHP擴展包

yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-devel

安裝Mysql擴展包

yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql

配置Apache、mysql開機啟動

chkconfig httpd on  

chkconfig mysqld on

系統會提示我們Centos7中命令已經改變

 

命令更改如下:

systemctl enable httpd.service
systemctl enable mysqld.service
systemctl list-unit-files  (centos6中是 chkconfig --list  用於查看啟動列表)

 

重啟Apache、mysql服務

/bin/systemctl restart  mysqld.service  (centos6 中為 service mysqld restart)

/bin/systemctl restart  php-fpm.service   同理替換 service php-fpm start

/bin/systemctl restart  httpd.service   同理替換service httpd restart

打開mysql

初次安裝mysql是沒有密碼的

mysql –u root

 

show databases;  #注意分號

 

可重置密碼

set password for 'root'@'localhost' =password('xxxxxxxx');

 

環境檢查

netstat –tunlp

如下圖,php監聽9000端口,apache監聽80端口,mysql監聽3306端口

 

php測試環境是否成功

進入apache的web根目錄:/var/www/html 中自己寫一個最簡單的php頁面

cd /var/www/html

touch test.php

vi test.php

進入到了控制模式之后按鍵盤字母 i 進入到編輯模式,將如下代碼輸入到文件中

<?php

echo "<title>Test Page</title>";

phpinfo()

?>

按 esc 退出編輯模式,回到控制模式,輸入 :wq 然后回車,在瀏覽器中輸入服務器IP地址+php文件名,例:115.115.115.115/test.php

出現下圖則成功。

 

最后再補上 安裝git

yum -y install git
 
 
二、下面是恢復WordPress的詳細過程:
 
首先是准備備份目錄和數據庫導出文件:就是一個wordpress工程包,一個.sql文件。

在本地打開終端,我這里用的是GitBash:

使用遠程拷貝命令:

scp xiaoteng.sql root@123.206.104.236:~/myBlogFiles

然后輸入密碼即可。

同理拷貝打包文件:

scp xiaoteng.zip root@123.206.104.236:~/myBlogFiles

在雲端解壓:

tar -xvf  ...

這里其實可以直接遠程拷貝文件夾到對應路徑:

scp -r xiaoteng root@123.206.104.236:/var/www/html

 

下面在雲端打開mysql命令行:

新建一個xiaoteng數據庫:

mysql> create database xiaoteng;

導入數據文件xiaoteng.sql:

方法一:use xiaoteng,source ~/myBlogFiles/xiaoteng.sql

方法二:重定向命令  mysql -uroot -p*** xiaoteng< ~/myBlogFiles/xiaoteng.sql

 

這里因為之前端口配置原因,還要改一下xt_options表中的兩個url字段,把端口號改成新的,這是wordpress框架內部實現跳轉的url。這里因為只針對於我自己的特殊情況,不再細說。

算了還是說一下吧,也算給自己寫的。。

用update命令改為自己的域名和端口(配置域名就真不說了)。(mysql> update xt_options set option_value='http://blog.xiaoteng.site' where option_id<3;)

 

然后還要提到的是更改httpd.conf這個apache的配置文件,將默認路徑映射到xiaoteng這個目錄下,座位網站的默認目錄頁。

不知道這個文件在哪可以用locate命令查找httpd.conf文件路徑:

locate httpd.conf

結果發現報錯了:

執行updatedb,等待一下再執行即可。

可以看到有兩個,選擇上面etc目錄下的進行修改:

vim /etc/httpd/conf/httpd.conf

找到DocumentRoot 改為,保存退出。

 

 

然后呢,就是打開一個瀏覽器,當然 配好域名后,在哪都可以,訪問blog.xiaoteng.site ,成功打開主頁。

 

 

 

 

最后還有些其他問題:

比如上傳圖片的時候說目錄沒有寫權限,給了777還是不行,然后想遠程登錄mysql數據庫改一下表。

又發現遠程數據庫只允許localhost訪問。

這里再改一下mysql中user表的host項從"localhost"改稱"%"

mysql -u root -pvmwaremysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

 

之后其實發現並不是數據庫的事,還是目錄權限的問題

僅僅chmod 777 xiaoteng 是不行的

而要把內部所有的子目錄和文件都加上權限,我這里的命令是:

chmod -R 777 xiaoteng/wp-content

然后就可以上傳了~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM