使用LNMP环境安装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://https://host$1 permanent;
}
设置好以后所有的http请求会重定向到https
```
方法2:使用支持https加速的cdn,我用的又拍云,在工具箱中配置好SSL服务,注意这里的ssl证书必须上传私钥,并且私钥不能用密码加密过,否则会失败,然后绑定你的CDN服务域名即可。我的就是用的是方法1加这种方法
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构