node+express+nginx搭建站点
window系统
1.安装node
2.新建文件夹test
3. cmd 命令行 cd test 进入test文件夹下 输入命令:npm -v查看版本 确认node是否安装成功
4.npm init -y 初始化创建一个package.json文件
5.安装express (我用的淘宝镜像) cnpm install express --save
6.在该文件夹下新建一个server.js文件(名字自己写,不一定非要是这个)
7.在新建的server.js文件里面写入如下代码
- var express = require('express');
- //var path = require('path');
- var app = express();
- app.use(express.static('public'));//设置静态文件
- //app.use(express.static(path.join(__dirname, 'public')));
- app.listen(8080, function() {
- console.log('App listening at port 8080;');
- });
8.在test文件夹下新建public文件,然后里面写一个简单的index.html,在该目录下新建文件夹a,b,每个文件下一个index.html页面
9.在命令行输入node server.js,打开浏览器输入地址127.0.0.1:8080查看是否能展示新建的index.html,不需要输入到index.html,分别再输入127.0.0.1:8080/a,127.0.0.1:8080/b 查看是否展示页面成功。
10.http://nginx.org/en/download.html下载nginx,现在下图所框的稳定版本,然后解压。
11.解压之后双击下图所框文件
12.在浏览器输入localhost,出现welcome界面表示安装成功。
如果没有出现如下界面先不要捉急,
1) 请在命令行输入netstat -aon|findstr "80" ,查看80端口被哪个程序占用, 我的显示是TCP 127.0.0.1:80 0.0.0.0:0 LISTENING 4,端口被进程号为4的进程占用。
2) 输入tasklist|findstr "4" 我的是被system占用,看到是这个名字千万不要慌,稳住,一定可以搞定,继续输入命令regedit打开注册表。
找到如下文件夹之后 继续找HTTP文件夹,鼠标点击HTTP 文件夹,出现右图所示内容,右键start修改数值数据为0,重启电脑,双击nginx.exe,再次打开localhost。
13.安装成功之后,接下来就是配置了,找到nginx下的conf/nginx.conf打开,进行如下配置,注意#后面的内容为注释掉的(懒得删除),或者直接用对比工具比对,其中http -> server -> location ->proxy_pass地址127.0.0.1(也可以是本机的ip地址)加上上面第7部的端口号, 然后新开一个命令框,输入nginx -s reload。
- #user nobody;
- worker_processes 1;
- #error_log logs/error.log;
- #error_log logs/error.log notice;
- #error_log logs/error.log info;
- #pid logs/nginx.pid;
- events {
- worker_connections 1024;
- }
- http {
- include mime.types;
- default_type application/octet-stream;
- #access_log logs/access.log main;
- log_format main '$remote_addr - $remote_user [$time_local] "$request" '
- '$status $body_bytes_sent "$http_referer" '
- '"$http_user_agent" "$http_x_forwarded_for"';
- sendfile on;
- keepalive_timeout 65;
- server {
- listen 80;
- server_name test.com static.test.com;
- #charset koi8-r;
- #access_log logs/host.access.log main;
- location / {
- proxy_pass http://192.168.1.180:8080;
- proxy_redirect off;
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- # proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
- # proxy_max_temp_file_size 0;
- # proxy_connect_timeout 90;
- # proxy_send_timeout 90;
- # proxy_read_timeout 90;
- # proxy_buffer_size 4k;
- # proxy_buffers 4 32k;
- # proxy_busy_buffers_size 64k;
- # proxy_temp_file_write_size 64k;
- #root g:/nodetest/public;
- # index index.html index.htm;
- }
- #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 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;
- #}
- }
- }
14.很重要的一个配置找到C:\Windows\System32\drivers\etc文件夹下的hosts文件,打开加入127.0.0.1 test.com www.test.com,浏览器输入test.com即可访问,test.com/a,test.com/b访问另外两个。
如果想要完成自己电脑配置,在同事电脑也能通过域名访问的话,就需要在步骤13配置为本机ip地址,且同事电脑需要进行14步骤的操作 输入为你的ip地址 test.com www.test.com。
node+express+nginx搭建站点的更多相关文章
- 【原创】node+express+socket搭建一个实时推送应用
技术背景 Web领域的实时推送技术,也被称作Realtime技术.这种技术要达到的目的是让用户不需要刷新浏览器就可以获得实时更新. 应用场景: 监控系统:后台硬件热插拔.LED.温度.电压发生变化 即 ...
- node express+mysql搭建简易API服务—body-parser中间件
最近用express搭建了一个简单的RESTful风格的API服务,数据库使用mysql,主要用于获取数据库数据,模糊搜索等. 需要用到的模块: express:这个都很熟悉了: body-parse ...
- node+express+jade搭建一个简单的"网站"
1.建立工程文件夹:my_jade 2.下载express和jade包到本地.我个人不喜欢下载成全局的,我喜欢下到工程文件夹中去. 3.建立相关的文件夹和文件. index.js: style.css ...
- node+express+ejs搭建一个简单的"页面"
1.建立工程文件夹my_ejs. 2.首先利用npm install express和npm install ejs 下载这两个家伙.至于要不要设置成全局的,看习惯,我习惯性的下载到本项目中的文件夹中 ...
- node + express本地搭建服务器,开启一个新的项目
1.安装node.地址:https://nodejs.org/zh-cn/download/ 2.新建一个文件夹test,进入到该文件夹下 a.按shift + 鼠标右键 ,选择在此处打开命令窗口( ...
- 从无到有,用Nodejs+express+mongodb搭建简易登陆系统
前端处理server表示很蛋疼,初学Node,虽然感觉异常强大,但是学起来还是有些吃力的,Node是工具,它不是万能的,搭建一个系统还是需要借助其他一些工具,对于我这个没怎么接触server的前端来说 ...
- Node+Express+MongoDB + Socket.io搭建实时聊天应用
Node+Express+MongoDB + Socket.io搭建实时聊天应用 前言 本来开始写博客的时候只是想写一下关于MongoDB的使用总结的,后来觉得还不如干脆写一个node项目实战教程实战 ...
- node.js简单搭建服务,访问本地站点文件
1.安装nodejs服务(从官网下载安装),node相当于apache服务器 2.在自己定义的目录下新建服务器文件如 server.js 例如,我在D:\nodeJs下创建了server.js文件 v ...
- Node+Express+MongoDB + Socket.io搭建实时聊天应用实战教程(二)--node解析与环境搭建
前言 本来开始写博客的时候只是想写一下关于MongoDB的使用总结的,后来觉得还不如干脆写一个node项目实战教程实战.写教程一方面在自己写的过程中需要考虑更多的东西,另一方面希望能对node入门者有 ...
随机推荐
- python :编写装饰器
简单装饰器 def log_time(func): # 此函数的作用时接受被修饰的函数的引用test,然后被内部函数使用 def make_decorater(): print('现在开始装饰') f ...
- override与重载的区别
override与重载的区别override 与重载的区别,重载是方法的名称相同.参数或参数类型不同,进行多次重载以适应不同的需要 Override 是进行基类中函数的重写.
- Easyui下的点击回车键跳转到下个控件
在Easyui框架下,JavaScript 中的 onKeyDown事件居然失效了.所以使用了另外的函数去实现点击回车键跳转到下个控件. /** * 点击回车键跳转到下个控件; * @param ol ...
- C#把日期转化成星期
显示效果: ***** 前台页面代码: <TextBlock Grid.Row="/> <TextBlock Grid.Row="/> ...
- vscode + leetcode +github 同步
1.用VScode打开本地leetcode文件夹 C:\Users\Administrator\.leetcode 2.上传到本地git库 3.打开github桌面,上传到远程库
- Java高并发之线程基本操作
结合上一篇同步异步,这篇理解线程操作. 1.新建线程.不止thread和runnable,Callable和Future了解一下 package com.thread; import java.tex ...
- oracle中的预定异常和自定义异常
预定异常 oracle中的预定异常情况大约有24个,对于这种异常情况的处理,无须再程序中定义,可用oracle自动引发,常见的预定异常如下 异常 说明 ACCESS_INTO_NULL 在未初始化对象 ...
- Myeclipse上配置weblogic11g(10.3.6)的方法教程
1.在windows-perferences-MyEclipse-Servers-weblogic下找到weblogic10.X 2.按照参考我上面的附图填入weblogic的相关路径(如果你是完全按 ...
- <Docker学习>2.Centos7安装docker
Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10. CentOS 7 满足最低内核的要求,但由于内核版本比较低,部分功能(如 overlay2 存储层驱动)无 ...
- 用python实现【五猴分桃】问题
转载链接:https://blog.csdn.net/cy309173854/article/details/78296839 据说“五猴分桃”问题最先是由大物理学家狄拉克提出来的,这一貌似简单的问题 ...