有了服务器的第一件事

22 篇文章 0 订阅
本文记录了一位程序员首次手动配置Linux服务器的过程,包括安装Nginx、Node.js和Git。通过yum安装Git,详细步骤讲解了Nginx和Node.js的下载、解压、移动与软连接创建。重点讨论了Nginx配置,特别是处理域名二级目录的alias设置,以及404页面和HTTPS配置。此外,还分享了购买域名、服务器备案等准备工作。
摘要由CSDN通过智能技术生成

前言

作为程序猿,linux 是始终绕不开的东西,其实服务器买好很久了,就一直没搞起来,这次就记录一下我的第一个服务器

服务器也是从 0 开始搭建的,然后一开始给朋友练手安装软件了(没用宝塔,全手动安装)后面也都会提到安装的过程

安装软件

前端需要运行项目其实要的东西不多,nginxnodejsgit。就够玩的了

git 安装

git 安装其实特别简单,因为用的是centos 的服务器,所以直接 yum install git 就完事了,没太多花里胡哨的东西

nginx 安装

可以看下以前的博客链接,个人觉得写的很详细了

linux 安装 Nginx 详细教程,含安装包链接

建立软连接,让全局都可以使用 nginx 命令

ln -s /usr/local/nginx/sbin/nginx /usr/local/bin

nodejs

有了上面的基础,安装 nodejs 也就很简单了

首先 进入 /usr/local 目录,最后我们把 node 安装到这个目录中

下载(wget 就是下载命令,下载网络链接的内容)

# 下载
wget https://nodejs.org/dist/v14.16.0/node-v14.16.0-linux-x64.tar.gz
# 解压
xz -d node-v14.16.0-linux-x64.tar.xz
# 在执行命令解压
tar -xf node-v14.16.0-linux-x64.tar
# 删除压缩包
rm -f node-v14.16.0-linux-x64.tar
# 执行移动操作,其实就是重命名的操作了
mv node-v14.16.0-linux-x64/ /usr/local/nodejs

建立软连接这一步就是想把nodenpm命令让他们可以全局使用

# 建立软连接
ln -s /usr/local/nodejs/bin/node /usr/local/bin

ln -s /usr/local/nodejs/bin/npm /usr/local/bin

配置 nginx 把博客搭起来

第一步先找到自己博客的文件,找一个安家的地方。所以我把所有的项目都放在了 /data 目录下。

然后就是改 nginx 配置了。这里有个坑值得记录下:

域名二级目录的坑

因为我的博客之前是搭建在码云的服务上的 jioho.gitee.io/blog/。所以打包配置 base: '/blog/' 也是特意改了。意思就是其实我们访问的是 jioho.gitee.io/blog/ 其实访问的文件夹是根目录(可能有点难理解,不过道理就是这么个道理)。像这种情况的 nginx 配置,就需要用到一个叫做 alias 的配置

  • nginx 的默认配置

简单的所一说这配置,监听 80 端口,监听的域名就是 localhost(ip 地址),然后第一个 location 匹配模式,就是访问 ip:8080/ 匹配上的第一个 /,就会用 {} 里面的配置

匹配上 /50x.html 的网址,就会跳转到 nginx 默认的 状态值为 500+的一个网页显示了

特别说一下就是 root,这个是项目的根目录,我的项目入口是在 /data/blog/dist/index.html。就是说我们访问域名 域名.com/ 开始就可以理解资源管理器的目录层级了,所以 root 要配置为 :/data/blog/dist/。让他进入我们的项目目录中去

然后后面的 index 配置就是说 index 默认查找的入口文件名称了。有些 index 后面可能会跟着 index.php 是一样的道理,就是找默认文件。

server {
  listen       80;
  server_name  localhost;

  location / {
      root   html;
      index  index.html index.htm;
  }

  error_page   500 502 503 504  /50x.html;
  location = /50x.html {
    root   html;
  }

}

上面的描述适合一般的项目搭建,由于码云的域名的问题(本该是 / 的,无缘无故多了一个 /blog/),所以我们还得继续改配置

新增一个 locatiion 修改如下:root。root 修改为 alias。配置的是 /blog。然后使用别名的方式把 域名/blog 映射到项目的根目录去。

location /blog {
    alias /data/blog/dist/;
    index index.html index.htm;
}

简单说一下 root 和 alias 区别

  • root 的处理结果是:root 路径+ location 路径
  • alias 的处理结果是:使用 alias 路径替换 location 路径
  • 使用 alias 时,目录名后面一定要加"/"。
  • alias 在使用正则匹配时,必须捕捉要匹配的内容并在指定的内容处使用。
  • alias 只能位于 location 块中。(root 可以不放在 location 中)

除了 alias ,还有另外一个方法,就是代理(proxy_pass),配置如下:

location /blog/ {
  proxy_pass http://blog.jioho.cn/;
}

nginx 配置 404 页面

其次一个就是 404 页面,因为我用的是 vuepress-theme-reco 这个主题框架,所以 404 是有一个寻人启事的友情链接,比如你随便访问一个我的域名下不存在的网址 jioho.gitee.io/blog/bucunzaidewanzhi.html 就是一个 404 界面这个 404 呢,也是要指向我们的 index.html,让前端自己处理,而不是用 nginx 默认的 404 界面

404 界面配置也很简单了,就是 404 的时候把页面引到 index.html 去,然后让框架的路由处理就行

error_page   404 /404.html;
location = /404.html {
    alias /data/blog/dist/index.html;
}

nginx 配置 https

https 也是现在站点的标配了,免费的 ssl 证书也有,我用的就是阿里云的 阿里云免费 SSL 证书申请方法流程(图文教程)

这时候 nginx 也会作妖一下,不过早在几年前就被我降服了,各种报错都在这篇文章,Linux 下 nginx 配置 ssl 证书实现 https 访问

最后

其实这中间也等了好久,比如买域名啊,服务器备案啊,等等一系列事情,有了自己的服务器之后,以后的产出可能就会更加好玩了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值