新加别一个盘符的资源目录
express 4.15
因为我的后台是用php 写的 apache 在e盘,现在在i盘有express 来写的一个前台,因为不要同一个目录下,所以刚开始我不知怎么写他们的图片路径,就用一个绝对路径 file:///e:.......这样在node 目录下他是不能正确被访问,
然后网上看到要中多一个中间件,然后我就在 app.js 下加了 :app.use(express.static('E:/www/apache2.4/htdocs/xinhe/')); 然后后面的拼接就能正确了
# win 下添加nginx 域名配置
# 这个是我配置的,可以用的
# 1.首先在conf 下增加一下文件夹 vhosts
# 2.在这个vhosts 下增加一个文件,如www.xinhe.com.conf(即是你的域名后加一个.conf),文件 内容如本文件内容
# 3.在conf下的主配置里的最后增加一行 :include vhosts/*.conf; #加载多站点配置文件
# 4.最后一步,在win 下在 C:\Windows\System32\drivers\etc\hosts 最后增加 127.0.0.1 www.xinhe.com
# linux 在 /etc/hosts 下增加 127.0.0.1 www.xinhe.com
注意一个问题,因为后台是php写的,他的编辑器上面的图片路径是在/xinhe(项目名)/..., 这样我们要再增加一个路径了指到apache/htdocs下 ,如: app.use(express.static('E:/www/apache2.4/htdocs/'));
这个时间注意的问题来了,因为我的设置的路由默认是跳到index.html,所以如果上面的所有资源文件下有index.html这个文件,那么我们访问的就人跳到资源文件里的index.html了,我刚开始还以为是我的nginx配置错了,后来我没有启动nginx 来调试,直接用端口访问来测试他才知道
# 5.重启nginx 就可以了
# start nignx , nginx.exe -s stop (win)
这里我不会配置nginx , apache 共享80端口, 所以把apache 的端口配置成了82 Listen 82
然后nginx 的配置 里
location ~ \.php$ {
proxy_pass http://127.0.0.1:82;
}
这样访问apache下的目录就要加这个82端口觉得不太好。(但是如果是有来做接口或后台的我觉得也是可以接受的)
总结
思路:用一门语言来写后台包括接口(如php), 用node 来做渲染,最后把项目布署到 nginx
1.express 相对于比较复杂的逻辑最好不要用他来处理