新加别一个盘符的资源目录

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 相对于比较复杂的逻辑最好不要用他来处理

posted on 2017-04-14 11:23  allen817  阅读(185)  评论(0编辑  收藏  举报