搭建个人博客

本贴最后更新于 1607 天前,其中的信息可能已经时移世改

1. 购买服务器,因为阿里云比腾讯云贵,所以买了腾讯云
2. 使用命令登录:ssh -p 22 root@xxx.xxx ,确定后输入密码
    注意:
    1、配置公钥后密码就不用输入了
    2、-p 22 是默认的,可以不写,如果换端口就需要写上,@后边跟服务器公网IP或者域名
3. 替换修改服务器名称
    vim /etc/sysconfig/network
    NETWORKING=yes
    HOSTNAME=centos     //修改为自己的hostname
    vim /etc/hosts
    ::1 centos centos //将原来的服务器名改为自己的hostname
    vim /etc/hostname
    centos      //修改为自己的hostname
4. 更换ssh端口
    vim /etc/ssh/sshd_config
    Port 端口号    //添加一行,修改自己的端口
    ClientAliveInterval 60 和 ClientAliveCountMax 86400  //修改sshd的连接配置
    systemctl restart sshd.service  //重启ssh服务
    systemctl status firewalld  //查看防火墙状态或者iptables
    firewall-cmd --state //查看防火墙状态
    firewall-cmd --query-port=8080/tcp //查询端口是否开放
    firewall-cmd --permanent --add-port=80/tcp //开放8080端口
    firewall-cmd --permanent --remove-port=8080/tcp //移除端口
    firewall-cmd --reload //重启防火墙(修改配置后要重启防火墙)
    reboot now //重启服务器
5. 创建新用户,赋予权限与ssh登录
    adduser name
    passwd name //确定后输入两次密码
    chmod -v u+w /etc/sudoers //确保文件可以读写,否则没法修改
    name ALL=(ALL) ALL #在 Allow root to run any commands anywhere root ALL=(ALL) ALL 这一行下插入一行
    使用name远程ssh登录
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
    然后把公钥复制到authorized_keys里就ok了

6. 安装go环境
    wget https://studygolang.com/dl/golang/go1.13.8.linux-amd64.tar.gz
    tar -C /usr/local -xvzf xxx.tar.gx //解压包到/usr/local/go
    vim /etc/profile    #打开文件,在最后添加下边两行
    export GOROOT=/usr/local/go
    export PATH=$PATH:$GOROOT/bin
    source /etc/profile #保存退出后source xxx
    go version //查看安装结果
    *注意:有可能有gcc报错
    yum install gcc
    gcc --version   //查看安装gcc结果
    运行go并将输出忽略或打到文件中
    nohup ./program >/dev/null 2>log &
    nohup ./program >/dev/null 2>&1 &
    关于/dev/null
    /dev/null属于字符特殊文件,它属于空设备,是一个特殊的设备文件,它会丢弃一切写入其中的数据,写入它的内容都会永远丢失,而且没有任何可以读取的内容。它就像一个黑洞,我们一般会把/dev/null当成一个垃圾站,不要的东西丢进去。比如来清除文件中的内容。
    Linux的重定向
    0:表示标准输入;
    1:标准输出,在一般使用时,默认的是标准输出;
    2:表示错误信息输出
    ./program >/dev/null 2>log表示将program的错误信息输出到log文件,其他信息丢进/dev/null
    ./program >/dev/null 2>&1表示将program的错误信息重定向到标准输出,其他信息丢
7. 安装node环境
    1、选择node
    node官网查询发布版本,选择版本:https://nodejs.org/dist/
    https://nodejs.org/dist/v12.12.0/node-v12.12.0-linux-x64.tar.gz
    2、安装
    下载:wget https://nodejs.org/dist/latest-v8.x/node-v8.11.4-linux-x64.tar.gz
        存放目录说明:
        /usr:系统级的目录,可以理解为C:/Windows/,/usr/lib理解为C:/Windows/System32。
        /usr/local:用户级的程序目录,可以理解为C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下。
        /opt:用户级的程序目录,可以理解为D:/Software,opt有可选的意思,这里可以用于放置第三方大型软件(或游戏),
        当你不需要时,直接rm -rf掉即可。在硬盘容量不够时,也可将/opt单独挂载到其他磁盘上使用。
        源码放哪里?
        /usr/src:系统级的源码目录。
        /usr/local/src:用户级的源码目录。
    解压:tar -C /usr/local/ -xvzf node-v12.12.0-linux-x64.tar.gz
    重命名:mv node-v12.12.0-linux-x64.tar.gz node
    * 如果不解压到usr目录的话,可以创建软连接:
        sudo ln -s /home/xxx/node-v8.9.0/bin/node /usr/local/bin/node 
        sudo ln -s /home/xxx/node-v8.9.0/bin/npm /usr/local/bin/npm  
    修改配置文件:vim  /etc/profile
    export NODE_HOME=/usr/local/nodejs
    export PATH=$NODE_HOME/bin:$PATH
    生效配置:source  /etc/profile
    3、测试node
    node -v
    npm -v

8. 生成ssh公钥私钥

    确认本机sshd的配置文件(需要root权限)
    # vi /etc/ssh/sshd_config 
    1、找到以下内容,并去掉注释符”#“
        RSAAuthentication yes 
        PubkeyAuthentication yes 
        AuthorizedKeysFile .ssh/authorized_keys 
    
        修改配置文件,需要重启sshd服务 (需要root权限)
        systemctl restart sshd.service
    2、生成公钥私钥
      # ssh-keygen -t rsa 
      按3个回车,密码为空。默认会在 ~/.ssh目录生成两个文件: id_rsa私钥,id_rsa.pub公钥。known_hosts文件会记录ssh密钥登陆的主机列表
    3、使用公钥下载git代码
        git clone xxx   //xxx最好是ssh下载地址

10、网站备案、域名
    网站底部的备案信息:<a href="http://beian.miit.gov.cn/" target="_blank"> 京ICP备xxx号</a>
  • 博客

    记录并分享人生的经历。

    272 引用 • 2386 回帖
  • 服务器

    服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。

    124 引用 • 580 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • Openfire

    Openfire 是开源的、基于可拓展通讯和表示协议 (XMPP)、采用 Java 编程语言开发的实时协作服务器。Openfire 的效率很高,单台服务器可支持上万并发用户。

    6 引用 • 7 回帖 • 94 关注
  • 倾城之链
    23 引用 • 66 回帖 • 120 关注
  • 996
    13 引用 • 200 回帖 • 6 关注
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖
  • 博客

    记录并分享人生的经历。

    272 引用 • 2386 回帖
  • CodeMirror
    1 引用 • 2 回帖 • 125 关注
  • Bug

    Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。

    71 引用 • 1737 回帖 • 1 关注
  • jsDelivr

    jsDelivr 是一个开源的 CDN 服务,可为 npm 包、GitHub 仓库提供免费、快速并且可靠的全球 CDN 加速服务。

    5 引用 • 31 回帖 • 51 关注
  • Kafka

    Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

    35 引用 • 35 回帖
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    21 引用 • 58 回帖
  • SOHO

    为成为自由职业者在家办公而努力吧!

    7 引用 • 55 回帖 • 65 关注
  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    713 引用 • 1174 回帖 • 104 关注
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 680 关注
  • Android

    Android 是一种以 Linux 为基础的开放源码操作系统,主要使用于便携设备。2005 年由 Google 收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。

    334 引用 • 323 回帖 • 19 关注
  • 面试

    面试造航母,上班拧螺丝。多面试,少加班。

    324 引用 • 1395 回帖
  • 正则表达式

    正则表达式(Regular Expression)使用单个字符串来描述、匹配一系列遵循某个句法规则的字符串。

    31 引用 • 94 回帖
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    10 引用 • 88 回帖
  • Postman

    Postman 是一款简单好用的 HTTP API 调试工具。

    4 引用 • 3 回帖 • 5 关注
  • abitmean

    有点意思就行了

    38 关注
  • Logseq

    Logseq 是一个隐私优先、开源的知识库工具。

    Logseq is a joyful, open-source outliner that works on top of local plain-text Markdown and Org-mode files. Use it to write, organize and share your thoughts, keep your to-do list, and build your own digital garden.

    5 引用 • 62 回帖
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    311 引用 • 546 回帖 • 1 关注
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖 • 1 关注
  • Hprose

    Hprose 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。

    9 引用 • 17 回帖 • 600 关注
  • 学习

    “梦想从学习开始,事业从实践起步” —— 习近平

    163 引用 • 473 回帖
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    7 引用 • 30 回帖 • 429 关注
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    165 引用 • 407 回帖 • 510 关注