最近买了一个阿里云服务器,准备写自己的网站,和将自己的作品放在上面;开始的时候,感觉就一个服务器应该很简单,但是从申请域名到备案,再到服务器搭建,没想到一波三折;闲话不多说,只是记录我在搭建时,最简单的方法;

环境

主机:Centos6.8

服务器:nginx,nodejs

数据库:mongoDB,mysql

其他:git,vsftp

安装vsftp

vsftp是一个基于Linux系统上的FTP服务器软件,至于它的作用就不用多说了吧,是用来传输文件的;下面是安装步骤:

查看是否已安装vsftp

rpm -qa | grep vsftpd

回车;如果出现如下提示,代表您已经安装过vsftp,可以跳过该步骤了;

如果什么都没有,那说明您还没有安装,接着下面的步骤:

安装vsftp并设置开机自启动

yum -y install vsftpd
chkconfig vsftpd on

编辑其配置文件

vi  /etc/vsftpd/vsftpd.conf

找到如下配置,并更改

anonymous_enable=NO
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_local_user=YES

添加FTP账号,在客户端远程请求,传输文件:

useradd -s /sbin/nologin -d username  //添加用户名
passwd username //设置密码

关闭防火墙,重启vsftpd

setenforce  0
service vsftpd restart

当您将上面的步骤全部实现后,可能还不能传输文件,那可能因为文您的文件夹没有更改的权限:

chmod -R 777 您的文件夹名

安装ngnix

我这里安装ngnix是按照阿里云提供的方法安装的,地址是 https://help.aliyun.com/document_detail/50700.html?spm=5176.doc50775.6.655.Epe5kw;

添加运行ngnix服务进程的用户

groupadd -r nginx
useradd -r -g nginx nginx

下载源码包解压编译

wget http://nginx.org/download/nginx-1.10.2.tar.gz
tar xvf nginx-1.10.2.tar.gz -C /usr/local/src
yum groupinstall "Development tools"
yum -y install gcc wget gcc-c++ automake autoconf libtool libxml2-devel libxslt-devel perl-devel perl-ExtUtils-Embed pcre-devel openssl-devel
cd /usr/local/src/nginx-1.10.2 ./configure \
--prefix=/usr/local/nginx \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/run/nginx.lock \
--http-client-body-temp-path=/var/tmp/nginx/client \
--http-proxy-temp-path=/var/tmp/nginx/proxy \
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi \
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
--http-scgi-temp-path=/var/tmp/nginx/scgi \
--user=nginx \
--group=nginx \
--with-pcre \
--with-http_v2_module \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_stub_status_module \
--with-http_auth_request_module \
--with-mail \
--with-mail_ssl_module \
--with-file-aio \
--with-ipv6 \
--with-http_v2_module \
--with-threads \
--with-stream \
--with-stream_ssl_module make && make install

添加至服务管理列表,设置开机自启。

chkconfig --add nginx
chkconfig nginx on

安装git

安装依赖的库

 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel

下载git

wget  https://github.com/git/git/archive/v2.12.2.tar.gz
tar -zvxf git-2.12.2.gz -C /usr/local/src
cd /usr/local/src/git-2.12.2
./configure --prefix=/usr/local/git
make
make install
echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/profile
source /etc/profile

安装node

我这里是使用NVM安装node,是Node.js的版本管理软件,使用户可以轻松在Node.js各个版本间进行切换。

直接使用git将源码克隆到本地

git clone https://github.com/cnpm/nvm.git /usr/local/node/.nvm && cd /usr/local/node/.nvm && git checkout `git describe --abbrev=0 --tags`

激活NVM

echo ". /usr/local/node/.nvm/nvm.sh" >> /etc/profile
source /etc/profile

列出Node.js的所有版本

nvm list-remote

安装Node.js版本

nvm install v6.10.2

查看已安装Node.js版本,当前使用的版本为v6.9.5。

[root@iZuf62didsxigy36d6kjtrZ .nvm]# nvm ls

ngnix反向代理node项目

vi /etc/nginx/nginx.conf

添加如下配置:

server {
listen 80;
server_name www.xxx.com xxx.com;
access_log /var/log/nginx/test.log;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Nginx-Proxy true;
proxy_set_header Connection "";
proxy_pass http://127.0.0.1:3000;
}
}

至此,基本上环境安装完成,不足之处,请各位多多包涵。至于mysql和mongoDB的安装,请参照以下地址去安装:

mysql:https://help.aliyun.com/document_detail/50700.html?spm=5176.doc50775.6.655.Epe5kw

mongoDB: http://www.runoob.com/mongodb/mongodb-linux-install.html

原文: http://blog.hawkzz.com/2017/04/19/阿里云VPS搭建Hexo博客/  作者: hawk_zz

阿里云VPS搭建Hexo博客的更多相关文章

  1. 阿里云+wordpress搭建个人博客网站【小白专用的图文教程】

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  2. 阿里云+wordpress搭建个人博客网站

    [正文] 在阿里云上搭建使用个人博客主要分为以下几个步骤: 1.购买阿里云ECS主机 2.购买域名 3.申请备案 4.环境配置 5.安装wordpress 6.域名解析 声明一下,本人对服务器端的知识 ...

  3. 博客Hexo + github pages + 阿里云绑定域名搭建个人博客

    申请域名 万网购买的域名,地址:https://wanwang.aliyun.com/domain/com?spm=5176.8142029.388261.137.LoKzy7 控制台进行解析 控制台 ...

  4. Hexo + github pages + 阿里云绑定域名搭建个人博客

    申请域名 万网购买的域名,地址:https://wanwang.aliyun.com/domain/com?spm=5176.8142029.388261.137.LoKzy7 控制台进行解析 控制台 ...

  5. 阿里云+WordPress搭建个人博客

    搭建过程: 第一步:首先你需要一台阿里云服务器ECS,如果你是学生,可以享受学生价9.5元/月 (阿里云翼计划:https://promotion.aliyun.com/ntms/act/campus ...

  6. 在vps上搭建hexo博客

    最近更换了服务器,需要把自己的Hexo Next重新部署到新服务器上,本文记录一下在vps上搭建hexo博客的过程. 在vps上搭建hexo博客需要下面这些工具: Nginx: 用于博客展示 SSH: ...

  7. 码云上部署hexo博客框架

    title: 码云上部署hexo博客框架 Hexo框架在码云上实现个人博客 本文受 https://www.jianshu.com/p/84ae2ba1c133 启发编写 本地调试 安装完Node.j ...

  8. 利用Serverless应用搭建Hexo博客

    本文将介绍如何使用火爆的Serverless应用,15分钟快速搭建Hexo博客.以腾讯云提供的Serverless应用–云开发为例: 步骤1:安装 CloudBase CLI 以及本地部署 Hexo ...

  9. 史上最详细“截图”搭建Hexo博客并部署到Github

    http://jingyan.baidu.com/article/d8072ac47aca0fec95cefd2d.html 大家也搭建过博客,很多时候,按着教程来做就可以了,但是我当时为了搭建Hex ...

随机推荐

  1. 用Python来实现列举某个文件夹内所有的文件列表

    用Python来实现列举某个文件夹内所有的文件列表.吾八哥我动手写代码之前分析了下,遍历一个文件夹,肯定是需要用到os模块了,查阅模块帮助信息,可知os.listdir()方法可以列举某个文件夹内的所 ...

  2. Zookeeper 笔记-应用场景

    应用场景:数据发布,订阅:分布式应用配置项:分布式计数器:统一命名服务:状态同步服务:集群管理:Master选举:分布式锁:定时任务争夺:分布式队列:分布式协调通知 特点:顺序一致性,原子性,单一视图 ...

  3. JAVA中HashMap和Hashtable区别

    Hashtable和HashMap在Java面试中相当容易被问到,甚至成为了集合框架面试题中最常被考的问题,所以在参加任何Java面试之前,都不要忘了准备这一题. 我们先看2个类的定义 public ...

  4. HttpComponents 发送post get 请求

    1.场景描述 使用Apache开源组织中的HttpComponents,完成对http服务器的访问功能. 2.HttpComponents项目的介绍 HttpComponents项目就是专门设计来简化 ...

  5. DNS over TLS到底有多牛?你想知道的都在这儿

    DNS over TLS,让电信.移动等各种ISP无法监视你的浏览轨迹...... SSL证书有助于客户端浏览器和网站服务器之间的加密连接. 这意味着在连接期间,所有的通信和活动都被遮蔽. 但通常意义 ...

  6. 顺序栈--Java实现

    /*栈和队列:逻辑结构属于操作受限的线性表 *栈:特点先进后出,只允许在栈顶操作 *栈的实现方式:顺序栈和链栈 *常见的操作:进栈,出栈,获取栈顶,判空,判满,栈的容量 *栈的应用 *1.逆序相关操作 ...

  7. 加载web项目时报的错误:Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modul

    用eclipse开发的java项目不能加载到tomcat6.0服务器,原因是:jst.web的版本高了 <installed facet="jst.web" version= ...

  8. 读取本地的json文件

    最近写项目需要读取本地的json文件,然后悲催的发现前端新手的我居然不会,查查找找发现这东西并不难,但是应该是比较常用的,毕竟json太好用了! 我是直接用的jquery实现的,但是Ajax也可以,不 ...

  9. kettle闪退问题

    确定Java的配置环境没问题 kettle闪退的时候把spoon.bat里面的配置项改一下 if "%PENTAHO_DI_JAVA_OPTIONS%"=="" ...

  10. 离散型特征编码方式:one-hot与哑变量

    在机器学习问题中,我们通过训练数据集学习得到的其实就是一组模型的参数,然后通过学习得到的参数确定模型的表示,最后用这个模型再去进行我们后续的预测分类等工作.在模型训练过程中,我们会对训练数据集进行抽象 ...