實戰LNMP搭建屬於自己的部落格(WordPress),lnmpwordpress

來源:互聯網
上載者:User

實戰LNMP搭建屬於自己的部落格(WordPress),lnmpwordpress

大家好,今天帶來的是搭建屬於自己的部落格網站,看到這篇文章的大佬肯定知道什麼叫做部落格了,所以這裡就不在介紹,在這裡介紹wordpress。

wordpress是什嗎?

WordPress是使用PHP語言開發的部落格平台,使用者可以在支援PHP和MySQL資料庫的伺服器上架設屬於自己的網站。也可以把 WordPress當作一個內容管理系統(CMS)來使用。


WordPress是一款個人部落格系統,並逐步演化成一款內容管理系統軟體,它是使用PHP語言和MySQL資料庫開發的。使用者可以在支援 PHP 和 MySQL資料庫的伺服器上使用自己的部落格。
WordPress有許多第三方開發的免費模板,安裝方式簡單易用。不過要做一個自己的模板,則需要你有一定的專業知識。比如你至少要懂的標準通用標記語言 (SGML)下的一個應用HTML代碼、CSS、PHP等相關知識。
WordPress官方支援中文版,同時有愛好者開發的第三方中文語言套件,如wopus中文語言套件。WordPress擁有成千上萬個各式外掛程式和不計其數的主題模板樣式。

簡單的說wordpress是使用PHP語言開發的部落格的一個平台,所以我們完全可以使用LNMP或者LAMP這樣的網站架構平台來搭建屬於自己的部落格。本章採用LNMP

LNMP的安裝大家可以參考我的這篇文章:http://blog.csdn.net/qq_39591494/article/details/78829314

同時也可以使用以下指令碼來安裝LNMP環境,這裡不再做示範了!

本篇文章完全可以使用雲端服務來搭建,這樣就可以訪問到自己的部落格了,同時也可以分享給別人觀看,博主在這篇文章也是使用的雲主機來搭建,OS為Centos7.2!

 

#!/bin/bash# DATE:Wed Jan 17 1# ywyankerp@163.com#this is a yankerp# The Nginx service is being installedROOT_ID=0ML=/usr/local/srcNGINX_ML=/usr/local/src/nginx-1.12.2PML=/usr/local/src/php-5.6.27QD=`netstat -anpt | grep 80 | awk '{print $7}' | cut -d "/" -f2 | cut -d ":" -f1`ADDR=`ip a | grep eno16777728$ | awk '{print $2}' | cut -d "/" -f1`MMM=`netstat -anput | grep mysqld | awk '{print $4}' | cut -d ":" -f4`MAR=`rpm -qa | grep mariadb`cd $ML && {wget http://mirrors.aliyun.com/repo/Centos-7.repo &> /dev/nullmv Centos-7.repo /etc/yum.repos.d/Centos-Base.repoyum clean all &> /dev/nullyum makecache &> /dev/null}if [ $? -eq 0 ]then  echo "Yum源更新完畢,開始安裝!!!"elseecho "Yum源error"exit 1fiecho "Yum源配置成功"if [ "$UID" -eq "$ROOT_ID" ]        then               echo "root使用者運行中" && systemctl stop firewalld && yum install -y gcc gcc-c++  pcre-devel zlib-devel openssl-devel &> /dev/null        else               echo "請使用Root使用者運行"               exit 1fiecho "依賴包安裝完成!"cd $ML || {        echo "進入目錄失敗!!!"        exit 1}wget http://nginx.org/download/nginx-1.12.2.tar.gz &> /dev/null && {tar zxf nginx-1.12.2.tar.gz && groupadd www && useradd -g www www -s /sbin/nologin}echo "Nginx包下載成功"cd $NGINX_ML && {./configure --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-http_ssl_module --with-http_gzip_static_module --user=www --group=www &> /dev/null && make &> /dev/null && make install &> /dev/null }if [ $? -eq "0" ]        then               ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin ;nginx && echo "Nginx啟動成功,請訪問http://$ADDR:80"        else               echo "Nginx啟動失敗!!!"               exit 1fi#Start installing MySQL5.7!echo "開始下載MySQL二進位安裝包,請稍等..."if [ -z "$MAR" ]                then                        echo "開始安裝MySQL"fiif [ -n "$MAR" ]                then                        rpm -e mariadb-libs --nodeps && echo "卸載mariadb成功!正式安裝MySQL"ficd $ML || {echo "進入目錄失敗!!!"exit 1}wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz &> /dev/null && {tar zxf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz  && mv mysql-5.7.18-linux-glibc2.5-x86_64 /usr/local/mysqlcd /usr/local/mysql/ && mkdir data && mkdir log && echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profilesource /etc/profile && groupadd mysql && useradd -r -g mysql -s /bin/false mysql}cat << EOF >/etc/my.cnf[client]  socket=/usr/local/mysql/mysql.sock  [mysqld]  basedir=/usr/local/mysql  datadir=/usr/local/mysql/data  pid-file=/usr/local/mysql/data/mysqld.pid  socket=/usr/local/mysql/mysql.sock  log_error=/usr/local/mysql/log/mysql.errEOFif [ ! -d /etc/my.cnf ]                then                        chmod 750 data/ && chown -R mysql . && chgrp -R mysql . && bin/mysqld --initialize --user=mysql && cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld && service mysqld start &> /dev/null                else                         echo "錯誤!!!"fiif [ $? -eq "0" ]thenecho "MySQL正式安裝完成殺青!"elseecho "MySQL安裝失敗!!!"exit 1fi#PHP install sccessyyum -y install libxml2-devel libcurl-devel openssl-devel bzip2-devel &> /dev/nullif [ $? -eq 0 ]        then                echo "依賴包安裝成功!!!"        else                echo "依賴包安裝失敗!!!"ficd $ML || {        echo "進入目錄失敗!!!"        exit 1}wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz &> /dev/null  && {tar zxf libmcrypt-2.5.7.tar.gz && cd libmcrypt-2.5.7/ && ./configure --prefix=/usr/local/libmcrypt &> /dev/null && make &> /dev/null && make install &> /dev/null}if [ $? -eq 0 ]        then                echo "Libmcrypt安裝成功!"        else                echo "Libmcrypt-ERROR!"        exit 1fi# PHP installcd $ML || {        echo "進入目錄失敗!!!"        exit 1}wget http://cn2.php.net/distributions/php-5.6.27.tar.gz &> /dev/null && {tar zxf php-5.6.27.tar.gz && cd php-5.6.27/ &&  ./configure --prefix=/usr/local/php5.6 --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-fpm --enable-sockets --enable-sysvshm --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --with-mhash --with-mcrypt=/usr/local/libmcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts  &> /dev/null}if [ $? -eq 0 ]then make &> /dev/null  && make install &> /dev/null  &&  echo "PHP編譯安裝成功,正在配置請稍等...."else echo "PHP安裝失敗"ficd $PML || {                echo "進入目錄失敗!!!"                exit 1}cp php.ini-production /etc/php.ini && {cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm && chmod +x /etc/init.d/php-fpm && chkconfig --add php-fpm && chkconfig php-fpm on}if [ $? -eq 0 ]                        then                                cp /usr/local/php5.6/etc/php-fpm.conf.default /usr/local/php5.6/etc/php-fpm.conf && echo "複製主配置成功"                        else                                echo "PHP許可權失敗,請重試!"fiif [ ! -d /usr/local/php5.6/etc/php-fpm.conf ]        then                sed -i 's#;pid = run/php-fpm.pid#pid = run/php-fpm.pid#g' /usr/local/php5.6/etc/php-fpm.conf                sed -i 's/listen = 127.0.0.1:9000/listen = 127.0.0.1:9000/g' /usr/local/php5.6/etc/php-fpm.conf                sed -i 's/pm.max_children = 5/pm.max_children = 300/g' /usr/local/php5.6/etc/php-fpm.conf                sed -i 's/pm.start_servers = 2/pm.start_servers = 20/g' /usr/local/php5.6/etc/php-fpm.conf                sed -i 's/pm.min_spare_servers = 1/pm.min_spare_servers = 20/g' /usr/local/php5.6/etc/php-fpm.conf                sed -i 's/pm.max_spare_servers = 3/pm.max_spare_servers = 100/g' /usr/local/php5.6/etc/php-fpm.conf        else                echo "NONONO"fiif [ $? -eq 0 ]                        then                                systemctl start php-fpm && echo "PHP啟動成功"                        else                                echo "啟動PHP失敗"fi#配置nginx解析phpif [ ! -d /usr/local/nginx/conf/nginx.conf ]then   sed -i 's/index  index.html index.htm;/index  index.php index.html index.htm;/g' /usr/local/nginx/conf/nginx.conf   sed -i 's/#    root           html;/    root           html;/g' /usr/local/nginx/conf/nginx.conf   sed -i 's/#    fastcgi_pass   127.0.0.1:9000;/    fastcgi_pass   127.0.0.1:9000;/g' /usr/local/nginx/conf/nginx.conf   sed -i 's/#    fastcgi_index  index.php;/    fastcgi_index  index.php;/g' /usr/local/nginx/conf/nginx.conf   sed -i 's*#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;*    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;*g' /usr/local/nginx/conf/nginx.conf   sed -i 's/#    include        fastcgi_params;/    include        fastcgi.conf;/g' /usr/local/nginx/conf/nginx.conf   sed -i '71d' /usr/local/nginx/conf/nginx.conf && sed -i 'N;70a}' /usr/local/nginx/conf/nginx.conf   sed -i '65d' /usr/local/nginx/conf/nginx.conf && sed -i 'N;64alocation ~ \\.php$ {' /usr/local/nginx/conf/nginx.confelse   echo "解析PHP失敗!!!"fitouch /usr/local/nginx/html/yankerp.phpcat << EOF >/usr/local/nginx/html/yankerp.phpEOFif [ ! -d /usr/local/nginx/html/yankerp.php ]thennginx -s reload && systemctl restart php-fpmelseecho "測試目錄檔案失敗"fiwget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo  &> /dev/null && yum install -y sl &> /dev/nullslif [ $? -eq 0 ]        then                echo "LNMP安裝成功,請您訪問http://$ADDR/yankerp.php"        else                echo "安裝失敗"fiif [ $? -eq 0 ]thenecho "LNMP安裝成功,請您訪問http://$ADDR/yankerp.php"elseecho "安裝失敗"fi###################################################################################################This is a yankerp~


 

運行指令碼的過程中不會輸出很多的一些過程,只會提示安裝過程到哪裡,運行過程大概5-20分鐘左右,如下:

 

如果出現那麼就安裝成功了,接下來訪問測試頁!

2、下載wordpress,wordpress使用到mysql資料庫,首先需要在mysql資料庫上進行操作。在這個指令碼下載完mysql資料庫後mysql的密碼在/usr/local/mysql/log/mysql.err下,擷取密碼 如下:

修改密碼如下:(如果不修改,則不能建立庫表等。)紅色部分為新密碼

登入到資料庫後我們進行建立wordpress庫以及授權如下:

建立完成後我們就可以下載wordpress了,https://cn.wordpress.org/

 

[root@yankerp ~]# tar zxf wordpress-4.9.1-zh_CN.tar.gz [root@yankerp ~]# mv wordpress /usr/local/nginx/html/wordpress[root@yankerp ~]# ll /usr/local/nginx/html/wordpress/total 188-rw-r--r--  1 nobody 65534   418 Sep 25  2013 index.php-rw-r--r--  1 nobody 65534 19935 Jan  3  2017 license.txt-rw-r--r--  1 nobody 65534  7001 Nov 30 20:20 readme.html-rw-r--r--  1 nobody 65534  5434 Sep 23 20:21 wp-activate.phpdrwxr-xr-x  9 nobody 65534  4096 Nov 30 20:20 wp-admin-rw-r--r--  1 nobody 65534   364 Dec 19  2015 wp-blog-header.php-rw-r--r--  1 nobody 65534  1627 Aug 29  2016 wp-comments-post.php-rw-r--r--  1 nobody 65534  2930 Nov 30 20:20 wp-config-sample.phpdrwxr-xr-x  5 nobody 65534  4096 Nov 30 20:20 wp-content-rw-r--r--  1 nobody 65534  3669 Aug 20 12:37 wp-cron.phpdrwxr-xr-x 18 nobody 65534 12288 Nov 30 20:20 wp-includes-rw-r--r--  1 nobody 65534  2422 Nov 21  2016 wp-links-opml.php-rw-r--r--  1 nobody 65534  3306 Aug 22 19:52 wp-load.php-rw-r--r--  1 nobody 65534 36583 Oct 13 10:10 wp-login.php-rw-r--r--  1 nobody 65534  8048 Jan 11  2017 wp-mail.php-rw-r--r--  1 nobody 65534 16246 Oct  4 08:20 wp-settings.php-rw-r--r--  1 nobody 65534 30071 Oct 19 01:36 wp-signup.php-rw-r--r--  1 nobody 65534  4620 Oct 24 06:12 wp-trackback.php-rw-r--r--  1 nobody 65534  3065 Sep  1  2016 xmlrpc.php
上面描述:解壓wordpress包,拷貝到/usr/local/nginx/html/下,起個名字叫wordpress。完成之後開啟瀏覽器訪問

 

http://IP/wordpress如下:

以上就全部搭建成功,那麼怎麼發博文呢?

1)進入後台管理

瀏覽器輸入http://IP/wordpress/wp-login.php如下:

此密碼就是剛剛在安裝時候的密碼,進來之後我們點擊文章-寫文章就可以了

到這裡大家就可以使用了!

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.