2.3.3.2 静态资源虚拟主机

1、配置静态资源虚拟主机

静态资源虚拟主机负责处理课程详情、公司信息、老师信息、统计信息等页面的请求:
将课程资料中的“静态页面目录”中的目录拷贝到F:/develop/xuecheng/static下 在nginx中配置静态虚拟主机如下

    #学成网静态资源server {listen       91;server_name  localhost;#公司信息location /static/company/ {alias E:/java_www/xcEduUI05/static/company/;}#老师信息location /static/teacher/ {alias E:/java_www/xcEduUI05/static/teacher/;}#统计信息location /static/stat/ {alias E:/java_www/xcEduUI05/static/stat/;}location /course/detail/ {alias E:/java_www/xcEduUI05/course/detail/;}

2、通过www.xuecheng.com虚拟主机转发到静态资源

由于课程页面需要通过SSI加载页头和页尾所以需要通过www.xuecheng.com虚拟主机转发到静态资源 在www.xuecheng.com虚拟主机加入如下配置:

        location /static/company/ {proxy_pass http://static_server_pool;}location /static/teacher/ {proxy_pass http://static_server_pool;}location /static/stat/ {proxy_pass http://static_server_pool;}location /course/detail/ {proxy_pass http://static_server_pool;}

配置upstream实现请求转发到资源服务虚拟主机:

#静态资源服务upstream static_server_pool{server 127.0.0.1:91 weight=10;}

2.3.3.3 门户静态资源路径

门户中的一些图片、样式等静态资源统一通过/static路径对外提供服务,在www.xuecheng.com虚拟主机中配置如 下:

        location /static/img/ {alias   E:/java_www/xcEduUI05/img/;}location /static/css/ {alias   E:/java_www/xcEduUI05/css/;}location /static/js/ {alias   E:/java_www/xcEduUI05/js/;}location /static/plugins/ {alias   E:/java_www/xcEduUI05/plugins/;add_header Access-Control‐Allow‐Origin http://ucenter.xuecheng.com;#add_header Access‐Control‐Allow‐Credentials true;#add_header Access‐Control‐Allow‐Methods GET;}

cors跨域参数:
Access-Control-Allow-Origin:允许跨域访问的外域地址
如果允许任何站点跨域访问则设置为*,通常这是不建议的。
Access-Control-Allow-Credentials: 允许客户端携带证书访问
Access-Control-Allow-Methods:允许客户端跨域访问的方法

只有http://ucenter.xuecheng.com这个域名可以访问

add_header Access‐Control‐Allow‐Origin http://ucenter.xuecheng.com;

修改路径

门户的静态资源目录:E:\java_www\xcEduUI05


将F:/develop/xc_portal_static改为E:/java_www/xcEduUI05
那么访问图片js/css/插件路径如:www.xuecheng.com/static/img/1.jpg

注意门户文件夹下不能放课程的静态资源。门户是门户,课程是课程
课程静态资源在我提供的资源文件夹下有

重启nginx


或者启动方法2:

E:/java_soft/nginx-1.14.0/nginx -c E:/java_soft/nginx-1.14.0/conf/nginx.conf


注意:我测试时,将以下代码注释了,因为我这里打开这2行,老是报错,也没找到解决办法,如果大家打开注释不报错,建议打开注释。

    #add_header Access‐Control‐Allow‐Credentials true;#add_header Access‐Control‐Allow‐Methods GET;

预览

注意:我在预览http://www.xuecheng.com/course/detail/course_main_template.html
这个路径时,我电脑不知道怎么回事,detail下的文件访问不了,但是改为detail2就可以,大家自由发挥


我们发现当配置了Nginx的配置文件后,访问这个html文件时,调用的静态图片路径由
http://www.xuecheng.com/static/img/widget-myImg.jpg

不设置Nginx的话,/static/img/的资源找不到在哪,因为项目根目录下只有img文件夹,没有/static/img/文件夹

2.3.3.4 页面测试

请求:http://www.xuecheng.com/course/detail/course_main_template.html测试课程详情页面模板是否可以正 常浏览。

Nginx配置文件修改如下:


#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;#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  logs/access.log  main;sendfile        on;#tcp_nopush     on;#keepalive_timeout  0;keepalive_timeout  65;#gzip  on;#cms页面预览upstream cms_server_pool{server 127.0.0.1:31001 weight=10;}#静态资源服务upstream static_server_pool{server 127.0.0.1:91 weight=10;}server {listen       80;server_name  localhost;location / {root   html;index  index.html index.htm;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}#门户的顶级域名,门户的主站server {listen       80;server_name  www.xuecheng.com;ssi on;ssi_silent_errors on;location / {alias   E:/java_www/xcEduUI05/;index  index.html index.htm;}location /static/img/ {alias   E:/java_www/xcEduUI05/img/;}location /static/css/ {alias   E:/java_www/xcEduUI05/css/;}location /static/js/ {alias   E:/java_www/xcEduUI05/js/;}location /static/plugins/ {alias   E:/java_www/xcEduUI05/plugins/;add_header Access-Control‐Allow‐Origin http://ucenter.xuecheng.com;#add_header Access‐Control‐Allow‐Credentials true;#add_header Access‐Control‐Allow‐Methods GET;}#页面预览location /cms/preview/ {proxy_pass http://cms_server_pool/cms/preview/;}location /static/company/ {proxy_pass http://static_server_pool;}location /static/teacher/ {proxy_pass http://static_server_pool;}location /static/stat/ {proxy_pass http://static_server_pool;}location /course/detail/ {proxy_pass http://static_server_pool;}}#学成网静态资源server {listen       91;server_name  localhost;#公司信息location /static/company/ {alias E:/java_www/xcEduUI05/static/company/;}#老师信息location /static/teacher/ {alias E:/java_www/xcEduUI05/static/teacher/;}#统计信息location /static/stat/ {alias E:/java_www/xcEduUI05/static/stat/;}location /course/detail/ {alias E:/java_www/xcEduUI05/course/detail/;}}}

2.3.3.5 页面动态脚本

为了方便日后的维护,我们将javascript实现的动态部分单独编写一个html 文件,在门户的include目录下定义 course_detail_dynamic.html文件,此文件通过ssi包含在课程详情页面中.
文件地址:资料\静态页面目录\include\course_detail_dynamic.html 所有的课程公用一个 页面动态脚本。
在课程详情主页面下端添加如下代码,通过SSI技术包含课程详情页面动态脚本文件:

<script>//课程idvar courseId = "template"
</script>
<!--#include virtual="/include/course_detail_dynamic.html"-->

本页面使用vue.js动态获取信息,vue实例创建的代码如下:

主要查看 created钩子函数的内容。


09静态资源虚拟主机相关推荐

  1. 前端静态资源请求和加载优化总结

    如果有这样一个项目,js脚本数量100+,其中50个是各种框架或库,css数量20+,图片若干 .那么,不用说,这个页面加载起来,一定快不了. 静态资源的请求和加载速度,直接影响页面呈现,应该怎么优化 ...

  2. 云虚拟主机是什么?与云服务器有哪些区别?

    随着全球大数据云计算的快速发展,云计算平台逐渐成为互联网行业发展的核心.为了持续满足企业信息化需求,云服务器和云虚拟主机在各个领域得到了越来越多的应用.按照不同的分割技术.管理技术和架构形式,网站&q ...

  3. Ajax_Apache访问资源文件的权限配置、资源存放路径配置、配置虚拟主机、动态网站静态网站区别...

    1.配置资源的访问权限 修改配置文件:httpd.conf  文件 改完之后要重启 2.切换资源默认存放目录www 修改配置文件httpd.conf  文件中的存放目录 3.Apache是否能够同时支 ...

  4. Nginx静态资源站点——Nginx虚拟主机

    功能一:搭建一个静态资源网站 1.准备好目录资源 [root@web01 ~]# mkdir /website [root@web01 ~]# cd /website [root@web01 webs ...

  5. Nginx - 静态网站;负载均衡;静态代理;动静分离;虚拟主机

    Nginx主要应用在如下方面 一.静态网站 Nginx是一个HTTP的web服务器,可以将服务器上的静态文件(如HTML.CSS.js.图片等)通过HTTP协议返回给浏览器客户端 如,我们创建一个Ja ...

  6. 百度云虚拟主机中的网站不能加载静态js、css和images等文件的解决方案

    百度云虚拟主机下配置个人网站不能加载静态js.css和images等文件时,需要在webroot(网站根目录)下创建bcloud_nginx_user.conf,在这个文件里面设置加载静态文件资源. ...

  7. Nginx_01_Nginx三大基础功能(静态服务器、虚拟主机、负载均衡/服务端代理)

    文章目录 一.前言 二.Nginx三大功能--HTTP服务器 三.Nginx三大功能--虚拟主机 3.1 虚拟主机 3.2 Nginx配置文件的结构 3.3 Nginx三种虚拟主机方式--基于ip的虚 ...

  8. 利用免费虚拟主机上传静态网站

    小白制作了一个简单的静态网站,想上线,选定了xx云,它提供免费虚拟主机(也可以制作php, .net的动态网站,它也提供了mysql数据库空间,  我们这里只是一个静态网站,足够用了). 下面记录一下 ...

  9. Linux配置apache虚拟主机:静态文件

    1.win访问linux:在win的hosts文件中添加 #配置lanmp 192.168.106.141 www.cd.pro测试: ping 192.168.106.141应该可以ping通 2. ...

最新文章

  1. 谈谈对分布式事务的一点理解和解决方案
  2. Android Editext监听光标位置
  3. 教育硬件告别“不温不火”:有道首战告捷,教育、科技巨头虎视眈眈
  4. java制作qq自动回复,求webqq自动回复原理好的实现方法。
  5. android jni ndk 视频分享
  6. Web socket广播
  7. mysql utf 8bm4 没用_不要在 MySQL 中使用“utf8”,請使用“utf8mb4”
  8. 流程控制语句【循环、条件】
  9. OpenCV图像处理(6)——轮廓标记
  10. 熵权法计算权重原理python实现
  11. C语言知识点复习梳理
  12. Masimo宣布旨在协助COVID-19响应努力的远程患者处治解决方案Masimo SafetyNet™全面上市
  13. statsmodels︱python常规统计模型库
  14. iMindMap12免费下载安装激活教程及如何免费用思维导图学习
  15. c语言扫雷游戏计时功能_C语言实现扫雷游戏(可以自动展开)
  16. commander、ora、chalk、inquirer使用
  17. ENVI打开Landsat 8 C2 数据
  18. 数数字(UVa1225)
  19. 9.1.4 用 send2trash 模块安全地删除
  20. Ionic2像使用字体图标一样使用png图标等

热门文章

  1. [VS2010]逸雨清风 校园网视频,网吧视频(光音网视)下载器 V0.26
  2. VUE动态生成word
  3. linux kernel panic not syncing 永久解决的方案
  4. MQTT-新一代物联网协议
  5. 联想手机里的照片误删怎么恢复
  6. 使用360浏览器出现域名解析错误和有道词典连接不了网络的解决方法
  7. shutdown immediate 太慢,需要进行进程查杀
  8. 【校招面试】紫光展锐 - 应用软件工程师面经(一面)
  9. python CNKI知网论文数据爬取
  10. 高级篇之ENC编码器实现简单视频会议的方案