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
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...