Ubuntu系統下使用php7+mysql+apache2搭建自己的博客

来源:https://www.cnblogs.com/rxzhang/archive/2020/02/15/12313697.html
-Advertisement-
Play Games

很多人都有寫博客的習慣,奈何國內的博客網站正在一家家地關閉與重整,部分博客網站也充斥著太多的廣告,使用體驗非常不好。對於愛寫博客的朋友來說,其實還有一個更好的選擇,那就是自己搭建一個博客。 ...


很多人都有寫博客的習慣,奈何國內的博客網站正在一家家地關閉與重整,部分博客網站也充斥著太多的廣告,使用體驗非常不好。對於愛寫博客的朋友來說,其實還有一個更好的選擇,那就是自己搭建一個博客。

搭建一個自己的博客網站首先需要購買雲伺服器,然後在伺服器中配置必要的運行環境或安裝依賴的軟體,最後還可以購買與綁定功能變數名稱,可以讓谷歌,百度等搜索引擎更好地搜錄。

購買雲服務的選擇很多,國內國外都有很多很優秀的雲伺服器提供商,比如國內的阿裡雲,騰訊雲,國外的amazon等等。但是這裡要提醒大家的是,如果購買的國內的伺服器,在綁定功能變數名稱的時候,是需要向有關部門申請功能變數名稱備案的,過程略繁瑣,但好在可以在網上完成這些步驟。在國外提供商處購買功能變數名稱,伺服器是不需要備案的。

下麵我們拿國外的雲伺服器提供商virmach(網址:https://www.virmach.com/)為例簡單的說明下如何搭建自己的博客。

首先是購買雲伺服器,virmach的官網頁面如下:

virmach官網

我們點擊上圖的Affordable Linux VPS,然後進入到選擇配置的界面

伺服器配置選擇界面

這裡有不同配置的伺服器可以選,$2.25 per month的配置就夠用了,然後點擊buy now,在新的頁面里可以選擇伺服器的位置等信息,大家可以選擇美國西海岸洛杉磯的機房。都選擇好以後點擊加入購物車,之後你需要註冊賬號購買購物車裡的商品,也就是我們剛剛選擇的伺服器,註冊賬號購買的流程就不詳述了,相信大家都會。

伺服器細節選擇界面

購買完成後,系統會快速完成伺服器的分配,之後,點擊Home,進入到你的主頁,然後點擊services,就是你訂單的界面。virmach home

點擊你剛剛購買的伺服器的名稱,就是下圖箭頭所指的鏈接。

伺服器訂單

 

你便進入到了伺服器的管理界面,這裡有該伺服器的詳細信息以及控制面板之類的工具。

首先我們安裝系統,點擊re-install OS,準備重新安裝你想要的系統。

re-install OS

 

然後選擇你的系統,這裡我們選擇ubuntu16.04,點擊re-install OS,就完成了系統的重新安裝。

 

 

 ubuntu16.04

 然後進入伺服器的詳情界面,這裡有我們需要的信息。比如伺服器的IP地址以及初始的root密碼,後續我們會用到這些信息。

server details

之後我們需要能夠遠程登錄你購買的伺服器的軟體。我們可以使用windows自帶的cmd進行操作,但是cmd的操作界面比較單一,對不熟悉linux命令行的人來說不太習慣,所以我在這裡推薦一個神器--MobaXterm(官網鏈接:https://mobaxterm.mobatek.net/),大家可以自行百度,然後下載,下載安裝後便可以使用了,這個軟體的下載安裝也非常簡單,這裡就不多介紹了。

雙擊打開MobaXterm軟體,先點擊界面左上角的Session,然後在彈出來的界面中點擊SSH,我們便可以新建一個SSH會話。

new session

然後在Remote host中填入你伺服器的IP,勾選Specify username後填入root。點擊OK,就新建完成一個新的SSH。

ssh info

我們可以看到MobaXterm左側工具欄中已經有你新建好的SSH的信息了,我們雙擊它,便可以連接伺服器。

第一次連接需要你輸入root密碼,也就是我們剛剛在server details界面的Root password,密碼比較長且複雜,請大家仔細輸入。密碼輸入正確後,便可以遠程操作伺服器了。你將會看到如下界面。

login success

如果不喜歡這個複雜的密碼,我們可以在命令行鍵入passwd命令修改root密碼。

passwd

伺服器的連接到此完成,接下來就是安裝必要的軟體了,這裡我們選擇PHP+mysql+apache2的搭配方式,這也是很常見的伺服器網站配置。

首先更新源,輸入下麵的命令並回車。

sudo apt-get update

然後安裝apache2,期間可能會詢問你是否要繼續操作,輸入Y回車就行。

sudo apt-get install apache2

apache2安裝完成後,我們安裝php。

sudo apt-get install php7.0

然後安裝mysql。

sudo apt-get install mysql-server

安裝的時候會有界面彈出來讓你設置資料庫密碼(方向鍵可以控制游標的移動),輸入自己想要設置的密碼就行,再次確認密碼就OK。

mysql passwd

再執行下述命令。

sudo apt-get install php7.0-mysql
sudo apt-get install libapache2-mod-php7.0

軟體的安裝已經完成。我們可以測試下能不能正常運行。

# 切換到web根目錄
cd /var/www/html
rm index.html

我們直接在伺服器新建一個名為index.php的腳本。在左側的sftp欄中直接右擊滑鼠,然後左鍵點擊New empty file,輸入文件名為index.php。

new file

然後寫入如下內容。記得保存並關閉文件。

<?php
    echo "<h1>Hello world!</h1>";
?>

new php

之後打開你的瀏覽器,輸入你伺服器的IP地址,如果看到如下效果,恭喜你,基本上你已經成功配置!

後續的步驟需要安裝博客程式,有很多開源的php博客程式,比如wordpress等等,wordpress應該算是最火最強大的php CMS之一了,它提供的插件,模板非常豐富,因此我們使用wordpress構建博客。

下載wordpress程式並解壓,在命令行逐行輸入並運行以下命令。

wget -c https://wordpress.org/latest.tar.gz
tar -xzvf ./latest.tar.gz
cp -r ./wordpress/* ./
rm -rf ./wordpress/

然後我們需要為博客新建一個資料庫,在命令行中鍵入以下命令並回車。系統會提示你輸入密碼,註意此處要輸入的密碼是你先前創建的資料庫的密碼,就是你在粉紅色的界面內創建的密碼。

mysql -uroot -p

然後逐行輸入以下命令,並回車。此處的blog你可以替換成你喜歡的名字,blog只是我拿來做示例的,註意這些命令後面都帶分號。

CREATE DATABASE blog;
exit;

然後我們開始正式安裝wordpress程式。

在瀏覽器地址欄輸入你伺服器的IP地址並回車。可以看到如下界面,點擊let's go進入下一步的安裝。

wp01

接下去就是填寫網站的基本信息,此處略過,填寫完成後就是填寫資料庫的基本信息。Database name處填你剛剛創建的資料庫的名字,如果你沒有改,那就是blog,username填入root,password填寫你資料庫的密碼,不要填寫錯誤。table prefix可以自己取,例如我在示例中填寫的是myblog_。點擊submit。

wp02

然後系統可能會提示你無法創建wp-config.php文件,你只要在/var/www/html/目錄下新建一個wp-config.php文件,並且把網頁中提示的要輸入的代碼粘貼進wp-config.php文件中保存就行。

然後在瀏覽器中點擊下一步你就能看到成功安裝了!

wp03

最後在mobaXtrem的命令行中在鍵入如下命令並回車執行。

chmod -R 775 ./*

再簡單說下wordpress。

瀏覽器中輸入你伺服器的IP地址並回車訪問,應該就可以看到你博客的主界面了。當然界面是可以隨時更換的。

blog

然後輸入http://你的IP/wp-login.php便可以登陸網站的後臺。你可以在後臺發佈新的文章,創建網站的頁面,安裝網站的插件,更換網站的UI等等,wordpress提供了非常多的頁面主題,都很好看。

wp dashboard

wp theme

如果想要功能變數名稱的話,可以去很多功能變數名稱提供商處購買,購買完後與IP做個綁定就行,比如我是在porkbun上購買的(網址:https://porkbun.com/),之後就可以直接用功能變數名稱訪問你的網站了,這裡就不做介紹了。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 為什麼分層? 不分層封裝的話,下麵的代碼就是上端直接依賴於下端,也就是UI層直接依賴於數據訪問層,分層一定要依賴抽象,滿足依賴倒置原則,所以我們要封裝,要分層 下麵這張圖和傳統的三層略有不同,不同之處在於,UI層不直接依賴於業務邏輯層,而是UI層依賴於業務邏輯抽象層IBLL,業務邏輯層不直接依賴於數 ...
  • Magicodes.IE在Docker中使用 更新曆史 2019.02.13 【Nuget】版本更新到2.0.2 【導入】修複單列導入的Bug,單元測試“OneColumnImporter_Test”。問題見(https://github.com/dotnetcore/Magicodes.IE/is ...
  • 1.前言 為什麼需要內部yum源呢,有可能是業務內部的伺服器對外是不通了,居於一些安全方面的考慮。內部yum源又有什麼好處呢,第一,速度快;第二,內網可控,外網有問題也不影響內網包的下載和安裝等。 2.部署 2.1 創建yum倉庫目錄 2.2 鏡像同步公網yum源 上游yum源必須要支持rsync協 ...
  • 1 #!/bin/bash 2 # @Author: HanWei 3 # @Date: 2020-02-14 18:51:37 4 # @Last Modified by: HanWei 5 # @Last Modified time: 2020-02-14 18:51:37 6 # @E-mai ...
  • 一、環境 VMWare+Centos7 二、寫在前面的話 安裝GCC最簡單的方式當然是【yum -y install gcc】但是我的機器上安裝下來後,其版本是4.8.5,感覺有點低,所以想升級一下(7.2.0, 8.2.0之類的版本)。於是需要手動安裝。 三、吃過的坑 1. 本地沒有GCC導致編譯 ...
  • rpm可以實現程式的快速,簡單安裝(跟編譯安裝比),但是rpm自己不能解決依賴,所以很多工具為了自動解決依賴應運而生,其中yum就是其中之一。 yum解決依賴的辦法: 必須有個文件伺服器,裡面放置所以的rpm包,以及包的相關元數據( qi, qR得到的數據)。元數據可以使用 來創建。並放置在repo ...
  • 1 DHCP伺服器簡介 DHCP(Dynamic Host Configuration Protocol),動態主機配置協議,DHCP 協議主要是用來自動為區域網中的客戶機分配TCP/IP 信息的網路協議,並完成每台客戶機的TCP/IP 協議配置。當我們將區域網中客戶機IP地址設置為動態獲取方式時, ...
  • 實驗環境:centos7 註:因為本次實驗在同一臺伺服器上,Apache與Nginx同為80埠,所以改Apache埠為60 1 配置Nginx伺服器: 編輯Nginx配置文件,寫入以下內容 location ~ \.php$ { 所有以.php結尾的文件,前面\代表轉義 proxy_pass h ...
一周排行
    -Advertisement-
    Play Games
  • 概述:在C#中,++i和i++都是自增運算符,其中++i先增加值再返回,而i++先返回值再增加。應用場景根據需求選擇,首碼適合先增後用,尾碼適合先用後增。詳細示例提供清晰的代碼演示這兩者的操作時機和實際應用。 在C#中,++i 和 i++ 都是自增運算符,但它們在操作上有細微的差異,主要體現在操作的 ...
  • 上次發佈了:Taurus.MVC 性能壓力測試(ap 壓測 和 linux 下wrk 壓測):.NET Core 版本,今天計劃準備壓測一下 .NET 版本,來測試並記錄一下 Taurus.MVC 框架在 .NET 版本的性能,以便後續持續優化改進。 為了方便對比,本文章的電腦環境和測試思路,儘量和... ...
  • .NET WebAPI作為一種構建RESTful服務的強大工具,為開發者提供了便捷的方式來定義、處理HTTP請求並返迴響應。在設計API介面時,正確地接收和解析客戶端發送的數據至關重要。.NET WebAPI提供了一系列特性,如[FromRoute]、[FromQuery]和[FromBody],用 ...
  • 原因:我之所以想做這個項目,是因為在之前查找關於C#/WPF相關資料時,我發現講解圖像濾鏡的資源非常稀缺。此外,我註意到許多現有的開源庫主要基於CPU進行圖像渲染。這種方式在處理大量圖像時,會導致CPU的渲染負擔過重。因此,我將在下文中介紹如何通過GPU渲染來有效實現圖像的各種濾鏡效果。 生成的效果 ...
  • 引言 上一章我們介紹了在xUnit單元測試中用xUnit.DependencyInject來使用依賴註入,上一章我們的Sample.Repository倉儲層有一個批量註入的介面沒有做單元測試,今天用這個示例來演示一下如何用Bogus創建模擬數據 ,和 EFCore 的種子數據生成 Bogus 的優 ...
  • 一、前言 在自己的項目中,涉及到實時心率曲線的繪製,項目上的曲線繪製,一般很難找到能直接用的第三方庫,而且有些還是定製化的功能,所以還是自己繪製比較方便。很多人一聽到自己畫就害怕,感覺很難,今天就分享一個完整的實時心率數據繪製心率曲線圖的例子;之前的博客也分享給DrawingVisual繪製曲線的方 ...
  • 如果你在自定義的 Main 方法中直接使用 App 類並啟動應用程式,但發現 App.xaml 中定義的資源沒有被正確載入,那麼問題可能在於如何正確配置 App.xaml 與你的 App 類的交互。 確保 App.xaml 文件中的 x:Class 屬性正確指向你的 App 類。這樣,當你創建 Ap ...
  • 一:背景 1. 講故事 上個月有個朋友在微信上找到我,說他們的軟體在客戶那邊隔幾天就要崩潰一次,一直都沒有找到原因,讓我幫忙看下怎麼回事,確實工控類的軟體環境複雜難搞,朋友手上有一個崩潰的dump,剛好丟給我來分析一下。 二:WinDbg分析 1. 程式為什麼會崩潰 windbg 有一個厲害之處在於 ...
  • 前言 .NET生態中有許多依賴註入容器。在大多數情況下,微軟提供的內置容器在易用性和性能方面都非常優秀。外加ASP.NET Core預設使用內置容器,使用很方便。 但是筆者在使用中一直有一個頭疼的問題:服務工廠無法提供請求的服務類型相關的信息。這在一般情況下並沒有影響,但是內置容器支持註冊開放泛型服 ...
  • 一、前言 在項目開發過程中,DataGrid是經常使用到的一個數據展示控制項,而通常表格的最後一列是作為操作列存在,比如會有編輯、刪除等功能按鈕。但WPF的原始DataGrid中,預設只支持固定左側列,這跟大家習慣性操作列放最後不符,今天就來介紹一種簡單的方式實現固定右側列。(這裡的實現方式參考的大佬 ...