非常高興能記錄這個網(wǎng)站的誕生過程写烤。文章還算細(xì)焰扳,涵蓋了坑和命令行,如果你會了藐石,那就跳過吧即供!
原文點擊這里: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ù)器密碼
輸入密碼后,出現(xiàn)如下圖祟印,說明連接服務(wù)器成功了肴沫。
安裝一些必備的環(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 強(qiáng)迫癥開始了
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 強(qiáng)迫癥
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
添加 開機(jī)自啟動
vi /etc/rc.local
在最后一行插入以下代碼
/usr/local/webserver/nginx/sbin/nginx
3.2 安裝MySQL
下載 MySQL
cd /home/softsrc 強(qiáng)迫癥
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
加入 開機(jī)啟動策略
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ù)器是否默認(rèn)安裝了 Apache件蚕,這個是不需要的孙技,為了怕引起沖突,我們必須卸載它排作。
yum -y remove httpd
檢查一下 Python 的版本牵啦,一般默認(rèn)是 2.4.3 版本的。
python -V
python 2.4.3
這個版本的 Python 偏低妄痪,沒有辦法安裝 Node.js哈雏,所以我們需要升級。
cd /home/softsrc 強(qiáng)迫癥
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不起作用的裳瘪,所以要用新版本替換舊版本成為默認(rèn)。
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 強(qiáng)迫癥
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
看到如下截圖岂津,恭喜你虱黄!
4.安裝Ghost
確保你已經(jīng)把 Node.js 安裝好了
cd /home/softsrc 強(qiáng)迫癥
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ù)制進(jìn)這個文件
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
過程中茶宵,有可能失敗危纫,被墻?用咱國人提供的完整的安裝乌庶,你就不用煩啦种蝶!-_- 吻我
==第三個坑==,當(dāng)你的終端 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 當(dāng)前是否正在運行