关注本站,零基础新手也能轻松搭建个人网站!
  1. 首页
  2. 腾讯云

腾讯云服务器开发环境搭建笔记

阿里云服务器优惠

重大福利提醒:【618活动】整个六月份阿里云服务器降价了,1核2G1年79元 3年226元。这个价格买到就是赚到。226元就可以让你建站3年,全网找不到这么低的价格了。
活动地址阿里云618降价活动(1核2G1M3年226元) 只有阿里云新用户才能参与活动。
必读事项购买阿里云服务器必读事项(省钱有绝招)
如果你不是阿里云新用户,可以找家人,亲戚的账号重新注册为阿里云新用户。一次性买满3年,我和我朋友们都是这么干的,主要是省钱。大家看了我的教程的应该都知道,多台云服务器之间的网站备份,数据迁移很容易,不用担心数据备份和迁移问题。
问题咨询:大家遇到各种问题可以微信咨询,微信号:xzjmyk 先加微信,然后拉你入交流群。

控制台基本配置

腾讯云的使用说明还是很详细和通俗的,链接附在下面:

腾讯云官方文档平台

1. 选择安装系统

系统安装

我这里选择了最新的 CentOS7.5,大概等10分钟左右系统安装完毕。

2. 更改密码 & 使用SSH密钥

我们首先更改初始密码,但是除了密码登录方式外,还有一种更为便捷和安全的方式,就是使用SSH秘钥进行登录。

创建 SSH 密钥

创建密钥

这里选择创建密钥,然后选择创建新密钥对。输入密钥名称确定,这时会弹出下载提示,请在10分钟内下载(保存好,后面还要用)。

密钥绑定服务器

选中刚才创建的密钥,点击绑定实例,选择自己的服务器后确定,之后按照提示操作就可以了。

3. 创建安全组

我们可以配置安全组,来控制哪些端口是可以外网访问的。

创建安全组


新建安全组

我这里选择了系统的默认模板,如果有需要,还可以修改规则。

配置好安全组后,点击右侧管理实例 → 新增关联 → 选择自己的服务器 确定关联就可以了。

远程连接

我们使用 PuTTY 连接云服务器:

1. 安装 PuTTY

下载PuTTY

安装好 PuTTY 后,可以看到这两个软件:

截图

接下来我们就要用的这两个软件。

2. 密钥转换

打开 PuTTYgen ,加载我们前面下载的密钥文件,然后在 key comment 栏中输入密钥名,输入加密私钥的密码,单击【Save private key】,在弹窗中选择要保存的地方保存。


截图

截图

3. 连接服务器

打开 PuTTY,然后按图示操作:

截图

如上图找到 SSH → Auth 选项,加载刚才用 PuTTYgen 转换过的密钥

截图

然后点击 Seesion 输入云服务器的 IP 地址,点击 Save 保存,方便下次直接访问,最后点击 Open 打开。

截图

直接输入:root 即可远程登录服务器了。

更新系统及软件

yum update -y

腾讯云安装的系统自带了 net-tools 和 vim 等软件,这里就不安装了,如果没有,建议安装一下。

yum install vim
yum install net-tools

node 安装

1. 添加源

curl -sL https://rpm.nodesource.com/setup_10.x | bash -

2. 安装

yum install nodejs -y

3. 安装 cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

参考:https://github.com/nodesource/distributions

nginx 安装

1. 添加源

创建文件:

vim /etc/yum.repos.d/nginx.repo

添加如下内容:

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key

参考:http://nginx.org/en/linux_packages.html

2. 安装

yum install nginx -y

3. 运行

nginx

此时可以在浏览器输入你的云服务器 ip 地址查看有没有反应了。如果有显示,恭喜你可以进行接下来的配置了。如果没有,就看看nginx是否安装成功,服务器防火墙是否关闭,安全组有没有配置好。

4. 常用命令

// 启动
nginx
systemctl start nginx.service

// 停止
nginx -s stop  // 立即停止
nginx -s quit  // 从容停止
killall nginx  // 杀死进程
systemctl stop nginx.service

// 重启
systemctl restart nginx.service

// 重新载入配置
nginx -s reload

// 查看进程
ps aux | grep nginx

// 查看开启的端口
netstat -tlnp

mongodb 安装

1. 添加源

新建文件:

vim /etc/yum.repos.d/mongodb-org-4.0.repo

添加如下内容:

[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc

2. 安装

yum install -y mongodb-org

3. 常用命令

service mongod start  // 启动
service mongod stop  // 关闭
service mongod restart  // 重启
chkconfig mongod on  // 验证是否启动

// centos7 建议使用如下命令
systemctl start mongod.service  // 启动
cat /var/log/mongodb/mongod.log  // 验证是否成功启动
ystemctl enable mongod.service  // 设置开机启动
systemctl stop mongod.service  // 关闭
systemctl restart mongod.service  // 重启

官网说明

服务器配置

1. 新建目录

/data 目录下新建如下目录:

  • www/blog 用于存放博客站文件
  • mongo/db 用于存放数据库文件
  • mongo/log 用于存放数据库log文件

mongo/log 目录下新建 mongod.log 文件

2. nginx配置

创建新用户 www,并让nginx也使用该用户:

groupadd www  // 创建用户

chown www:www /data  // 添加用户权限

打开 nginx 主配置文件:

vim /etc/nginx/nginx.conf

做如下修改:

user  www;  // 默认用户修改为 www
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;
}

打开 nginx server配置文件:

vim /etc/nginx/conf.d/default.conf

做如下修改:

server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /data/www;  // 网站文件存放目录
        index  index.html index.htm;
        proxy_set_header host $host;  // 重定义请求头host为转发的host
        proxy_pass http://localhost:3000/;  // 端口转发
        proxy_cookie_domain localhost xxx.xxx.xxx.xxx;  // 使转发的cookie到新的域名
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

注意上面的这三项配置:

proxy_set_header host $host;
proxy_pass http://localhost:3000/;
proxy_cookie_domain localhost xxx.xxx.xxx.xxx; 

因为博客项目将以 node 为服务器程序,它将占用 3000 端口,而用户端不能访问服务器的 3000 端口,因此需要用 nginx 进行转发。

nginx 转发后,其请求头将是 localhost:3000 ,这是我们不想让客户看到的,所以需要用 proxy_set_header host $host; 将请求头转换为我们的域名。

我们的网站会在用户端存储一些cookie,这个也需要重新定位,否则用户端将接收不到这些cookie,这里使用 proxy_cookie_domain localhost xxx.xxx.xxx.xxx; 将cookie重新定位,xxx.xxx.xxx.xxx 是我们的域名。

完成以上配置后,我们输入以下命令,重新加载配置项:

nginx -s reload

3. 数据库配置

打开 mongodb 配置文件:

vim /etc/mongod.conf

进行如下配置:

# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /data/mongo/log/mongod.log  // log文件位置

# Where and how to store data.
storage:
  dbPath: /data/mongo/db  // 数据存储目录
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo

# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.

# security:

#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options

#auditLog:

#snmp:

保存以后,给 /data/mongo 及其子目录下所有文件添加用户:mongod

chown -R mongod:mongod mongo

此时输入命令运行数据库:

systemctl start mongod.service

如果提示错误,缺少 pid 文件,则进入目录 /var/run/mongodb 新建文件 mongod.pid

touch mongod.pid

重启数据库即可:

systemctl restart mongod.service

4. 数据库添加用户、开启验证

连接数据库:

mongo

添加用户:

// 超级管理员
use admin

db.createUser({
  user: 'root',  // 用户名
  pwd: 'password',  // 密码
  roles:[{
    role: 'root',
    db: 'admin'
  }]
})

use blog  // 创建数据库 blog,并切换到 blog

// blog管理员,用于创建集合,管理数据库,添加删除blog用户等的操作
db.createUser({
  user: 'blogadmin',
  pwd: 'password',
  roles:[{
    role: 'dbOwner',
    db: 'blog'
  }]
})


// blog用户,用户端用于连接数据库的用户,只有读写操作的权限
db.createUser({
  user: 'blog',
  pwd: 'password',
  roles:[{
    role: 'readWrite',
    db: 'blog'
  }]
})

打开配置文件:

vim /etc/mongod.conf

找到如下语句,并做修改:

# security:

// 修改为:
security:
  authorization: enabled  // 开启验证

本来想远程用可视化软件连接数据库的,但是尝试了几种网上的办法均告失败,不过几条数据通过命令行就能搞定,多条数据就用我的笨办法:本地写好js文件,然后上传到服务器,node运行一下。

5. 上传文件

下载安装WinSCP

WinSCP下载地址

新建站点:

WinSCP

选择高级,添加我们的SSH密钥,填写服务器 IP 地址,服务器的用户名然后保存。在左侧列表中选中保存的站点,登录就可以了。

直接把我们打包好的文件拖进右侧对应目录即可:(打包时注意一些链接要改为我们现在的服务器ip或者域名)

截图

在 PuTTY 进入目录 /data/www/blog 输入命令安装项目的依赖:

npm i  // 或者 cnpm i

安装完成后,运行:

node index.js

然后在浏览器输入服务器 IP,这时就可以正常访问我们的网站了。

原文地址:http://tencent.yundashi168.com/868.html

原创文章,作者:admin,如若转载,请注明出处:http://tencent.yundashi168.com/868.html

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code

2020年阿里云618大促活动(有香港主机)

1核/2G/1M---91元1年,三年275元;
2核/4G/1M---320元1年,三年960元;
2核/8G/1M---416元1年,三年1093元;
4核/8G/1M---465元1年,三年1396元;
1核2G(香港,不用备案)---249元1年,三年888元;点击直达
还有还有4核8G6M、8核16G10M配置,价格很低很低!

注意:这个价,只有新用户才能看到;老用户借用家人身份重新注册,这个价格重新注册也不亏!

我知道了