静态页面

Nginx简单部署静态页面

旧巷老猫 提交于 2019-12-02 03:02:41
环境: CentOS 7 Nginx根目录: /etc/nginx/ 在Nginx根目录下创建一个目录(文件夹),命名为: html。 用于放置页面文件。 编辑 /etc/nginx/conf.d 下的 default.conf( 因为主配置文件 /etc/nginx/nginx.conf 包含了 /etc/nginx/conf.d/ default.conf ) 将 /etc/nginx/nginx.conf 内容修改如下(删除掉了默认的注释内容,先从基础搞起,一点点深入了解配置) : 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 /usr/share/nginx/html; } # 设置反向代理 location /v/ { proxy_pass http://xxx.com/api/; } } 以上修改了默认端口的访问内容。然后局域网访问(内容包含了一些ajax反向代理请求的内容): index.html内容如下: <!DOCTYPE html> <html

商城-RabbitMQ及消息同步-RabbitMQ

不想你离开。 提交于 2019-11-30 22:11:10
商城-RabbitMQ及消息同步-RabbitMQ 1.RabbitMQ 1.1.搜索与商品服务的问题 1.2.消息队列(MQ) 1.2.1.什么是消息队列 1.2.2.AMQP和JMS 1.2.3.常见MQ产品 1.2.4.RabbitMQ 1.3.下载和安装 1.3.1.下载 1.3.2.安装 1.RabbitMQ 1.1.搜索与商品服务的问题 目前我们已经完成了商品详情和搜索系统的开发。我们思考一下,是否存在问题? 商品的原始数据保存在数据库中,增删改查都在数据库中完成。 搜索服务数据来源是索引库,如果数据库商品发生变化,索引库数据不能及时更新。 商品详情做了页面静态化,静态页面数据也不会随着数据库商品发生变化。 如果我们在后台修改了商品的价格,搜索页面和商品详情页显示的依然是旧的价格,这样显然不对。该如何解决? 这里有两种解决方案: 方案1:每当后台对商品做增删改操作,同时要修改索引库数据及静态页面 方案2:搜索服务和商品页面服务对外提供操作接口,后台在商品增删改后,调用接口 以上两种方式都有同一个严重问题:就是代码耦合,后台服务中需要嵌入搜索和商品页面服务,违背了微服务的 独立 原则。 所以,我们会通过另外一种方式来解决这个问题:消息队列 1.2.消息队列(MQ) 1.2.1.什么是消息队列 消息队列,即MQ,Message Queue。 消息队列是典型的:生产者

nginx服务器

元气小坏坏 提交于 2019-11-30 18:31:03
1什么是Nginx   Nginx 是一款高性能的 http 服务器(静态页面,jsp。htm) / 反向 代理服务器 及电子邮件( IMAP/POP3 )代理服务器 ,并且 cpu 、内存等资源消耗却非常低,运行非常稳定。   官方网站下载 nginx : http://nginx.org/ 部署静态页面 server { listen 87; server_name 127.0.0.1; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } } server { listen 88; server_name 127.0.0.1; location / { root hrm-home; index index.html index.htm; } } server { listen 99; server_name 127.0.0.1; #charset koi8-r; #access_log logs/host.access.log main; location / { root hrm-user; index index.html index.htm; } } 2作用,用处   前端页面的部署   解决端口访问问题

乐优商城项目总结day(14)

白昼怎懂夜的黑 提交于 2019-11-30 16:08:12
乐优商城项目总结day(14) 页面静态化 问题分析 如果使用前端ajax异步加载数据渲染的方式,不利于浏览器的搜索引擎检索,会对页面的seo造成影响。因此可以采用服务端渲染的方式,在服务端获取数据并生成动态页面返回。 如果,我们的页面是通过Thymeleaf模板引擎渲染后返回到客户端。那么在后台就需要大量的数据查询,而后渲染得到HTML页面。会对数据库造成压力,并且请求的响应时间过长,并发能力不高。 解决方案 首先我们能想到的就是缓存技术,比如Redis。不过Redis适合数据规模比较小的情况。假如数据量比较大,例如我们的商品详情页。每个页面如果10kb,100万商品,就是10GB空间,对内存占用比较大。此时就给缓存系统带来极大压力,如果缓存崩溃,接下来倒霉的就是数据库了。 所以缓存并不是万能的,某些场景需要其它技术来解决,比如静态化。 什么是静态化 静态化是指把动态生成的HTML页面变为静态内容保存,以后用户的请求到来,直接访问静态页面,不再经过服务的渲染。 而静态的HTML页面可以部署在nginx中,从而大大提高并发能力,减小tomcat压力。 如何实现静态化 目前,静态化页面都是通过模板引擎来生成,而后保存到nginx服务器来部署。常用的模板引擎比如: Freemarker Velocity Thymeleaf 我们之前就使用的Thymeleaf,来渲染html返回给用户

静态页面与动态页面

允我心安 提交于 2019-11-29 16:33:10
静态页面和动态页面 静态页面 是一种手工编写包含所有信息和内容的页面,一般由HTML元素构成,或者由加上其他浏览器能解析执行的脚本代码(如JS)组成,可以直接用本地的浏览器打开。 随着互联网技术和信息时代的快速发展,采用静态页面方式建立的站点只能简单地根据用户的需求传送现有页面,无法实现各种动态交互。具体来说,静态页面在以下几个方面存在明显的不足: (1)无法支持后台数据库。随着网上信息量的增加,以及企业或个人希望通过网络发布产品和信息的需求的增强,人们越来越需要一种能够通过简单的Web页面访问服务端后台数据库的方式,这是静态页无法实现的。 (2)无法有效地对站点信息进行及时的更新。用户如果需要对传统静态页面的内容和信息进行更新或修改的话,只能够采用逐一更改每个页面的方式。在互联网发展初期,这种做法是可以接受。但如今就个人站点而言都包含着各种各样的丰富内容,因此如何及时、有效地更新页面信息已成为一个亟待解决的问题。 (3)无法实现动态显示效果。所有的静态页面都是事先编写好的,是一成不变的,因此访问同一页面的用户看到的都将只是相同的内容,静态页面无法根据不同的用户做不同的页面显示。 动态页面 人们将传统的编程技术与Web技术相结合,从而形成新的网页开发技术,就是通过在传统的静态页面中加入各种程序和逻辑控制,实现浏览器客户端和Web服务器的动态信息交互。具体来说就是

Nginx+Tomcat动静分离及Nginx优化

和自甴很熟 提交于 2019-11-29 07:05:35
目的: nginx处理用户请求的静态页面,tomcat处理用户请求jsp页面,来实现动态分离,nginx处理静态页面效率远高于tomcat,这样一来就能更好的提高并发,处理性能。 准备软件: 下载jdk1.7: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 下载tomcat8.0: http://tomcat.apache.org/download-80.cgi 下载nginx1.4.4: http://nginx.org/en/download.html 1 、JDK配置 [root@localhost ~]# tar zxvf jdk-7u45-linux-x64.tar.gz [root@localhost ~]# mv jdk1.7.0_45/ /usr/local/jdk [root@localhost ~]# vi /etc/profile JAVA_HOME=/usr/local/jdk PATH=$PATH:$JAVA_HOME/bin CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export JAVA_HOME PATHCLASSPATH [root@localhost ~]# source

表单

给你一囗甜甜゛ 提交于 2019-11-28 08:03:04
表单 1. 表单概述 1 什么是表单 表单是一块可采集用户数据的区域 表单对后端开发者至关重要 2如何创建表单区域 用 form 元素表示表单 用 action 属性表示表单的提交地址 用 method 属性表示表单的提交方式 在制作静态页面时,可不用书写上述的属性 在制作静态页面时,建议不要设置 form 元素的样式) 3表单中可放置哪些元素 对于静态页面的开发者,表单只是一个普通的块盒,内部可放置任何元素 通常情况下,表单中会放置一些可以与用户进行交互的元素 由于这些交互元素通常出现在表单中,因此,我们常称之为表单元素 4表单元素的两个重要属性 }name 属性:表示发送到服务器的键名 }value 属性:表示发送到服务器的值 2. 表单元素 —文本框 1使用input 元素表示一个文本框: input 是一个空元素 2可通过type 属性设置文本框类型 3. 表单元素 —单选和多选框 1使用input 元素表示单选和多选框 4. 表单元素 —按钮 1使用input 元素或 button 元素表示按钮 2按钮有很多种 普通按钮:点击后没有任何额外的效果 重置按钮:必须出现在表单中,点击后将其他表单元素重置为初始值 提交按钮:必须出现在表单中,点击后会将表单数据提交到服务器 图片按钮:功能同提交按钮一样,只不过样式为一张图片,该按钮已很少使用 3input 和 button

表单

感情迁移 提交于 2019-11-27 20:33:20
表单概述 什么是表单? 表单是一块可采集用户数据的区域 表单对后端开发者至关重要 如何创建表单区域: 用form元素表示表单 用action属性表示表单的提交地址 用method属性表示表单的提交方式 在制作静态页面时,可不用书写上述的属性 在制作静态页面时,建议不要设置form元素的样式 表单中可放置哪些元素: 对于静态页面的开发者,表单只是一个普通的块盒,内部可放置任何元素 通常情况下,表单中会放置一些可以与用户进行交互的元素: 文本框、按钮、单选框、多选框、下拉列表。 由于这些交互元素通常出现在表单中,因此,我们常称之为表单元素 表单元素的两个重要属性 name属性:表示发送到服务器的键名 value属性:表示发送到服务器的值 表单元素 — 文本框 使用input元素表示一个文本框: input是一个空元素 可通过type属性设置文本框类型: 最常用的文本框、其他文本框 表单元素 — 单选和多选框 使用input元素表示单选和多选框 表单元素 — 按钮 使用input元素或button元素表示按钮 按钮有很多种 input和button的比较 input元素的type属性总结 表单元素 — 下拉列表 使用select和option元素的组合表示下拉列表 下拉列表的类型:普通的下拉列表、选项分组的下拉列表 表单元素 — 数据列表和多行文本框 使用datalist元素表达数据列表

三种实现PHP伪静态页面的方法

孤街浪徒 提交于 2019-11-27 14:06:28
三种实现PHP伪静态页面的方法 PHP伪静态写法--其一 伪静态又名:URL重写 主要是为了SEO而生的。(SEO是什么?这个不用问我吧。呵呵~搞网络的不懂SEO那就~~~~) 方法一: 比如这个网页 /soft.php/1,100,8630.html 其实处理的脚本是soft.php 参数为1,100,8630 相当于soft.php?a=1&b=1=100&c=8630 只不过这样的URL太难记。搜索引擎也不喜欢。 真静态只是完全生成了HTML。 客户端访问的时候直接输出。不用脚本解释。在流量非常大的时候(比如每天有上百万的访问量的时候)会起到很好的效果。也就是说服务器端实实在在的存在这个HTML页面。 当然在你网站的流量没有那么大的时候。URL重写是最好的方法(个人观点,大流量的时候可以考虑负载均衡了。同样没有关系) 附URL重写的方法有很多种,APACHE,IISREWRITE。甚至PHP脚本都可以直接处理。比如上例中就是PHP脚本直接处理(该方法好处是大流量的时候直接减轻WEB伺服器的压力。PS:同样也是个人观点: ================================================ 下面以程序为例讲一下PHP伪静态的程序实现方法,其实这方法我之前已经有在其它论坛社区发过 程序为例: /soft.php/1,100,8630.html CODE