第一篇博客:新生兒

非常高興能記錄這個網(wǎng)站的誕生過程。文章還算細,涵蓋了坑和命令行,如果你會了,那就跳過吧!

原文點擊這里:http://www.zengxianhua.com/2016/02/11/di-yi-pian-bo-ke-xin-sheng-er

==第一個坑==,理解Linux系統(tǒng)的分類,基本上分兩大類:

  • RedHat系列:Redhat、Centos、Fedora等
  • Debian系列:Debian、Ubuntu等

命令工具包是不一樣的,具體如下:

RedHat 系列:

  • 常見的安裝包格式 rpm 包,安裝rpm包的命令是 “rpm -參數(shù)”
  • 包管理工具 yum
  • 支持tar包

Debian系列:

  • 常見的安裝包格式 deb 包,安裝deb包的命令是 “dpkg -參數(shù)”
  • 包管理工具 apt-get
  • 支持tar包

選擇你熟悉的包管理工具的服務(wù)器吧!

1.購買服務(wù)器

嗯!我購買的是 阿里云 的Centos系列服務(wù)器,以下教程都圍繞著 yum 包管理工具開展,按各自所需購買吧!

2.購買域名

域名很重要,好記或不好記?比如我這個網(wǎng)站是 zengxianhua.com ,是我朋友的應(yīng)該會覺得好記。
Godaddy 是全球最大的域名供應(yīng)商,讓你的毛爺爺飛一會。
接下來就是把域名和服務(wù)器綁定起來,直白一點,域名解析指定服務(wù)器 IP地址 ,拿出你的探索能力 Do 她。

3.配置服務(wù)器

由于我使用的是 Mac OS X,有一些工具命名用詞可能會不一樣,首先登入服務(wù)器。
啟動終端 Terminal

輸入命令行:

ssh root@你的IP地址

回車,等待你輸入服務(wù)器密碼

B21B0BCA-4AF3-496A-85E8-42EBA2C26CB9.jpg

輸入密碼后,出現(xiàn)如下圖,說明連接服務(wù)器成功了。

8FD84F64-00BA-4347-B0CF-DDDA6950B408.jpg

安裝一些必備的環(huán)境,直接用 yum 包管理工具安裝就可以了。

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5* krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers  pcre pcre-devel GeoIP GeoIP-devel GeoIP-data patch

沒錯,一組命令 就是這么長,不要糾結(jié)排版。

耐心等待..................

3.1 安裝Nginx

創(chuàng)建必要的 目錄,用于放各種下載包

make /home/softsrc

安裝 Nginx 所需的 pcre庫:

cd /home/softsrc      強迫癥開始了
wget http://sourceforge.net/projects/pcre/files/pcre/8.33/pcre-8.33.tar.gz/download
tar zxvf pcre-8.33.tar.gz
cd pcre-8.33
./configure
make && make install

開始安裝 Nginx

cd /home/softsrc      強迫癥
wget http://nginx.org/download/nginx-1.8.0.tar.gz
tar -zxvf nginx-1.8.0.tar.gz
cd nginx-1.8.0
vi auto/cc/gcc
#CFLAGS="$CFLAGS -g"   將這行代碼注釋掉,取消Debug編譯模式。大概在179行左右

我們再配置下 Nginx 編譯參數(shù)

./configure --user=www --group=www --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module

make && make install

添加 開機自啟動

vi /etc/rc.local
在最后一行插入以下代碼
/usr/local/webserver/nginx/sbin/nginx
3.2 安裝MySQL

下載 MySQL

cd /home/softsrc      強迫癥
wget wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.13.tar.gz
tar -zxvf mysql-5.6.13.tar.gz
cd mysql-5.6.13

安裝 cmake 軟件包

yum install cmake

/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/ -DMYSQL_DATADIR=/media/raid10/mysql/3306/data/ -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR==/media/raid10/mysql/3306/mysql.sock -DMYSQL_USER=mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

我們配置下 MySQL 的編譯參數(shù),一般配置下安裝路徑就可以了,如你有特殊配置也可以在安裝之后修改參數(shù),這里你大可以泡杯茶,編譯需要較長的時間。

make
make install clean

添加 MySQL 用戶

useradd mysql
cd /usr/local/webserver/mysql/scripts
chown -R mysql.mysql /usr/local/webserver/mysql

安裝 數(shù)據(jù)庫

cd /usr/local/webserver/mysql/scripts

./mysql_install_db  --basedir=/usr/local/webserver/mysql --datadir=/media/raid10/mysql/3306/data --user=mysql

創(chuàng)建 my.cnf 配置文件

cd /usr/local/webserver/mysql/support-files

cp mysql.server /etc/rc.d/init.d/mysql
cp my-default.cnf /etc/my.cnf

復(fù)制 MySQL 管理腳本

cp mysql.server /etc/rc.d/init.d/mysql

復(fù)制 MySQL 配置文件

cp my-default.cnf /etc/my.cnf

添加 MySQL 服務(wù)

chkconfig --add mysql

加入 開機啟動策略

chkconfig mysql on

service mysql start

通過以下命令 登錄管理 MySQL 服務(wù)器(提示輸入密碼直接回車,這是用 root 登錄的)

/usr/local/webserver/mysql/bin/mysql -u root -p -S /tmp/mysql.sock 
如果沒有設(shè)置密碼,密碼留空,直接回車。
如果設(shè)置了密碼,先輸入密碼,然后回車。

輸入以下 MySQL 語句,用于創(chuàng)建一個具有 root 權(quán)限的用戶,用戶名是 admin,密碼是 12345678。

GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' IDENTIFIED BY '12345678' WITH GRANT OPTION;

flush privileges;

創(chuàng)建賬號成功后,方便使用和登錄。

3.3 安裝Node.js

檢查買回來的服務(wù)器是否默認安裝了 Apache,這個是不需要的,為了怕引起沖突,我們必須卸載它。

yum -y remove httpd

檢查一下 Python 的版本,一般默認是 2.4.3 版本的。

python -V
python 2.4.3

這個版本的 Python 偏低,沒有辦法安裝 Node.js,所以我們需要升級。

cd /home/softsrc     強迫癥
wget -c http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2
tar jxvf Python-2.7.3.tar.bz2
cd Python-2.7.3
./configure
make && make install

安裝完畢了,這個時候?qū)嶋H不起作用的,所以要用新版本替換舊版本成為默認。

mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/bin/python2.7 /usr/bin/python

再次檢查是否已經(jīng)升級成功。

python -V

這個時候 Python 已經(jīng)升級成功了,但是yum還是需要舊版本的才可以正常運行,如果我們調(diào)試升級整個 yum 沒必要,所以只需要修改 yum 的配置文件就可以了。

vi /usr/bin/yum

修改第一行

#!/usr/bin/python 修改為 #!/usr/bin/python2.4

然后 esc ,再 :wq 保存退出就可以了。

終于到 Node.js 了。

cd /home/softsrc     強迫癥
wget http://nodejs.org/dist/v0.10.24/node-v0.10.24.tar.gz
tar zxvf node-v0.10.24.tar.gz
cd node-v0.10.24
./configure
make && make install

用一下命令行查看安裝是否成功。

node -v
npm -v

看到如下截圖,恭喜你!

4B05BDF1-A11B-4AF1-AD1C-5382D2E7C775.jpg

4.安裝Ghost

確保你已經(jīng)把 Node.js 安裝好了

cd /home/softsrc      強迫癥
wget --no-check-certificate https://ghost.org/zip/ghost-latest.zip
unzip ghost*.zip -d ghost
cd ghost
npm install --production  等待N長時間之后

先不要急著 npm start ,繼續(xù)擼。

5.配置 Ghost 域名

使用 Nginx 作為你的 Web 服務(wù)器

配置你的站點

先創(chuàng)建 sites-available 、sites-enabled 目錄

cd /usr/local/webserver/nginx
mkdir sites-available
mkdir sites-enabled

/sites-available/ 目錄下創(chuàng)建一個 ghost.conf 文件,使用文本編輯器打開這個文件

cd sites-available
touch ghost.conf
vi ghost.conf

把以下內(nèi)容復(fù)制進這個文件

server {
   listen 80;
   server_name example.com;

   location / {
        proxy_set_header   X-Real-IP $remote_addr;
        proxy_set_header   Host      $http_host;
        proxy_pass         http://127.0.0.1:2368;
   }
}

server_name 的值改為 你的域名

把你的配置文件軟鏈接到 sites-enabled 文件夾下:

cd ..
sudo ln -s sites-available/ghost.conf sites-enabled/ghost.conf
/usr/local/webserver/nginx/sbin/nginx -s reload

在瀏覽器輸入 你的域名 就可以看到屬于你的Ghost博客了,你也來寫你的第一篇博客吧!

Q&A

==第二個坑==,npm install --production 過程中,有可能失敗,被墻?用咱國人提供的完整的安裝,你就不用煩啦!-_- 吻我

==第三個坑==,當你的終端 Terminal 關(guān)閉后,Ghost也會隨之關(guān)閉,然后你的博客就無法訪問了,那怎么辦?
如何讓 Ghost 一直運行呢?
有兩種解決方案,Forever 比較簡單,另外一種請自行搜索吧!

  • Supervisor
  • Forever
  • 通過 npm install forever -g 安裝 forever
  • 為了讓 forever 從 Ghost 安裝目錄運行,輸入 NODE_ENV=production forever start index.js
  • 通過 forever stop index.js 停止 Ghost
  • 通過 forever list 檢查 Ghost 當前是否正在運行

下一期:創(chuàng)業(yè)初期如何簡省成本

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容