雖然我是搞asp.net的 但是十分欣賞php,php有很多開源的博客程式 比如大名鼎鼎的Wordpress.還有各種獨立博客大牛使用的z-blog,以及短小精悍的emblog。 wordpress臃腫不堪,pass!其他的不喜歡,所以就選擇國人開發的typecho開源博客系統,優點就是簡單好用,支... ...
雖然我是搞asp.net的 但是十分欣賞php,php有很多開源的博客程式 比如大名鼎鼎的Wordpress.還有各種獨立博客大牛使用的z-blog,以及短小精悍的emblog。
wordpress臃腫不堪,pass!其他的不喜歡,所以就選擇國人開發的typecho開源博客系統,優點就是簡單好用,支持markdown。
安裝typecho需要php環境,這裡我使用的是lnmp,伺服器採用Vultr乞丐版,系統是ubuntu14.14,下麵開始安裝,每一步都有詳細介紹
```
升級各種軟體包
sudo apt-get update
安裝screen 防止長時間編譯時ssh斷開連接
sudo apt-get install screen
開啟新screen視窗
screen -S lnmp
下載並安裝lnmp一鍵包 因為我的伺服器在國內所以用的lnmp國內的下載點
wget -c https://api.sinas3.com/v1/SAE_lnmp/soft/lnmp1.2-full.tar.gz --no-check-certificate && tar zxf lnmp1.2-full.tar.gz && cd lnmp1.2-full && ./install.sh lnmp
按照提示一步一步安裝好即可-mysql超級密碼,是否啟用innoDB,Mysql版本,php版本,完成後就是長時間的等待編譯完成了,時間比較長 30分鐘到1小時不等,看VPS的配置
上一部完成後 添加虛擬主機
lnmp vhost add
輸入功能變數名稱 www.luodaoyi.com,
設置偽靜態規則,lnmp一鍵包已經內置了typecho的支持 所以只需要輸入 typecho即可,它會自定Incloud Typecho的偽靜態配置
typecho
創建mysql資料庫 這就不說了 按照提示來
然後我們的虛擬主機就配置好了
這還沒完,還得重新配置下偽靜態文件,否則typecho會404.。
vi /usr/local/nginx/conf/vhost/www.luodaoyi.com.conf
主要有兩點
註釋掉 try_files $uri =404;
啟用 include pathinfo.conf;
看起來是這樣:
server
{
listen 80;
#listen [::]:80;
server_name www.luodaoyi.com;
index index.php;
root /home/wwwroot/www.luodaoyi.com;
include typecho.conf;
#error_page 404 /404.html;
location ~ [^/]\.php(/|$)
{
# comment try_files $uri =404; to enable pathinfo
#try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
include pathinfo.conf;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
access_log /home/wwwlogs/www.luodaoyi.com.log access;
}
然後就可以上傳typecho的代碼開始安裝了,具體不再覆述
啟用https:
方法有兩種
方法1 :直接在伺服器的nginx配置好ssl證書,並啟用443埠,想要http連接全部跳轉到Https的話,繼續編輯nginx的vhost配置
vi /usr/local/nginx/conf/vhost/www.luodaoyi.com.conf
添加新80埠server 設置好跳轉:
server
{
listen 80;
server_name www.luodaoyi.com;
rewrite .*$ https://$host$1 permanent;
}
設置好以後所有的http請求會重定向到https
```
方法2:使用支持https加速的cdn,我用的又拍雲,在工具箱中配置好SSL服務,註意這裡的ssl證書必須上傳私鑰,並且私鑰不能用密碼加密過,否則會失敗,然後綁定你的CDN服務功能變數名稱即可。我的就是用的是方法1加這種方法