09静态资源虚拟主机
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静态资源虚拟主机相关推荐
- 前端静态资源请求和加载优化总结
如果有这样一个项目,js脚本数量100+,其中50个是各种框架或库,css数量20+,图片若干 .那么,不用说,这个页面加载起来,一定快不了. 静态资源的请求和加载速度,直接影响页面呈现,应该怎么优化 ...
- 云虚拟主机是什么?与云服务器有哪些区别?
随着全球大数据云计算的快速发展,云计算平台逐渐成为互联网行业发展的核心.为了持续满足企业信息化需求,云服务器和云虚拟主机在各个领域得到了越来越多的应用.按照不同的分割技术.管理技术和架构形式,网站&q ...
- Ajax_Apache访问资源文件的权限配置、资源存放路径配置、配置虚拟主机、动态网站静态网站区别...
1.配置资源的访问权限 修改配置文件:httpd.conf 文件 改完之后要重启 2.切换资源默认存放目录www 修改配置文件httpd.conf 文件中的存放目录 3.Apache是否能够同时支 ...
- Nginx静态资源站点——Nginx虚拟主机
功能一:搭建一个静态资源网站 1.准备好目录资源 [root@web01 ~]# mkdir /website [root@web01 ~]# cd /website [root@web01 webs ...
- Nginx - 静态网站;负载均衡;静态代理;动静分离;虚拟主机
Nginx主要应用在如下方面 一.静态网站 Nginx是一个HTTP的web服务器,可以将服务器上的静态文件(如HTML.CSS.js.图片等)通过HTTP协议返回给浏览器客户端 如,我们创建一个Ja ...
- 百度云虚拟主机中的网站不能加载静态js、css和images等文件的解决方案
百度云虚拟主机下配置个人网站不能加载静态js.css和images等文件时,需要在webroot(网站根目录)下创建bcloud_nginx_user.conf,在这个文件里面设置加载静态文件资源. ...
- Nginx_01_Nginx三大基础功能(静态服务器、虚拟主机、负载均衡/服务端代理)
文章目录 一.前言 二.Nginx三大功能--HTTP服务器 三.Nginx三大功能--虚拟主机 3.1 虚拟主机 3.2 Nginx配置文件的结构 3.3 Nginx三种虚拟主机方式--基于ip的虚 ...
- 利用免费虚拟主机上传静态网站
小白制作了一个简单的静态网站,想上线,选定了xx云,它提供免费虚拟主机(也可以制作php, .net的动态网站,它也提供了mysql数据库空间, 我们这里只是一个静态网站,足够用了). 下面记录一下 ...
- Linux配置apache虚拟主机:静态文件
1.win访问linux:在win的hosts文件中添加 #配置lanmp 192.168.106.141 www.cd.pro测试: ping 192.168.106.141应该可以ping通 2. ...
最新文章
- 谈谈对分布式事务的一点理解和解决方案
- Android Editext监听光标位置
- 教育硬件告别“不温不火”:有道首战告捷,教育、科技巨头虎视眈眈
- java制作qq自动回复,求webqq自动回复原理好的实现方法。
- android jni ndk 视频分享
- Web socket广播
- mysql utf 8bm4 没用_不要在 MySQL 中使用“utf8”,請使用“utf8mb4”
- 流程控制语句【循环、条件】
- OpenCV图像处理(6)——轮廓标记
- 熵权法计算权重原理python实现
- C语言知识点复习梳理
- Masimo宣布旨在协助COVID-19响应努力的远程患者处治解决方案Masimo SafetyNet™全面上市
- statsmodels︱python常规统计模型库
- iMindMap12免费下载安装激活教程及如何免费用思维导图学习
- c语言扫雷游戏计时功能_C语言实现扫雷游戏(可以自动展开)
- commander、ora、chalk、inquirer使用
- ENVI打开Landsat 8 C2 数据
- 数数字(UVa1225)
- 9.1.4 用 send2trash 模块安全地删除
- Ionic2像使用字体图标一样使用png图标等