下面寫一個詳細的搭建和遷移教程,而後我會慢慢把cnblog的技術文遷移過來,而且也會常寫一些心情隨筆,畢竟仍是想作一個生活豐富程序員。php
Tencent cloud CentOS 7 x64, 無現成LAMP, 需本身安裝配置。 html
1、下面是lamp詳細的安裝過程:前端
能夠先用命令查看系統是否安裝了Apache(或者其餘軟件,不過估計都沒有,是個裸機。。。)mysql
rpm -qa | grep httpdgit
yum -y install httpd 程序員
yum -y install php web
yum -y install php-fpmsql
yum -y install mysql數據庫
yum -y install mysql-serverapache
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
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 –u root
show databases; #注意分號
可重置密碼
set password for 'root'@'localhost' =password('xxxxxxxx');
netstat –tunlp
以下圖,php監聽9000端口,apache監聽80端口,mysql監聽3306端口
進入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
出現下圖則成功。
在本地打開終端,我這裏用的是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
而後就能夠上傳了~