当前位置: 首页 > news >正文

岳阳网站建设公司it培训机构哪个好一点

岳阳网站建设公司,it培训机构哪个好一点,中小型教育网站的开发与建设,事业单位网站建设方案问题 当Angular在本地ng server运行时候,可以顺利访问各级路由。 但是运行ng build后,在dist 路径下的打包好的额index.html 必须要在服务器下运行才能加载。 在服务器下我们第一次访问路由页面时是没有问题的,但是尝试刷新页面或手动输入路…

问题

当Angular在本地ng server运行时候,可以顺利访问各级路由。
但是运行ng build后,在dist 路径下的打包好的额index.html 必须要在服务器下运行才能加载。
在服务器下我们第一次访问路由页面时是没有问题的,但是尝试刷新页面或手动输入路由地址,会发现页面变成了404,
在这里插入图片描述
可以看到控制台报警 GET http://localhost:8004/b-component 404 (File not found), 我们在debug模式下是没有问题的,但是在打包服务器环境下运行就不行了。
有其他文章说 使用hash 路由可以解决问题,但是hash路由毕竟不是主流的路由方式。
目前使用重定位路由解决。

解决方式

一 创建文件

由于我们使用的是 python的 http server。所以我们创建python 脚本,src/server.py
代码如下:

import http.server
import socketserver
import os , reclass MyHttpRequestHandler(http.server.SimpleHTTPRequestHandler):def do_GET(self):# #方法一:根据路由地址判断# if self.path in ['/', '/a-component', '/b-component', '/c-component']:#     self.path = 'index.html'#方法二:根据文件后缀判断# 排除一些可能的无后缀静态资源# path 里面不含有 . 后缀的都认为是路由地址if re.match(r'^\/(?!robots\.txt|sitemap\.xml|manifest\.json).*', self.path) and '.' not in self.path:self.path = 'index.html'return http.server.SimpleHTTPRequestHandler.do_GET(self)handler_object = MyHttpRequestHandlerPORT = 8004
my_server = socketserver.TCPServer(("", PORT), handler_object)my_server.serve_forever()

代码里面,创建了一个自定义的 http.server
当页面请求到固定的路由地址的时候,将请求重定向到了index.html文件,因为我们打包后只有index.html文件,并没有其他的网页文件,所以请求的资源找不到。
这里简单有几种判断方式:

  • 一:枚举所有的重定向地址,如果网页有改动的话需要动态更高
  • 二:根据响应的规则,判断如果是路由地址的话,就重定向到index.html,此规则需要根据实际情况修改
  • 三:在ng build 后,编写脚本,通过js或者python,读取src/app/app.routes.ts文件里面的所有路由地址,存入文件,然后在服务器脚本里面读取判断(未做)

配置拷贝

在angular.json 中添加"src/server.py",这样当build的时候,会拷贝 server.py 在dist 的index.html的同级目录
在这里插入图片描述

打包

运行 ng build

运行服务器

进入打包目录后,运行 server.py

  • cd …/dist/btest/browser
  • python3 server.py

访问网页正常

在这里插入图片描述

http://www.hrbkazy.com/news/941.html

相关文章:

  • 免费网页制作成app上海好的seo公司
  • 一般请人做网站和app多少钱百度的企业网站
  • 福建省建设厅网站林瑞良新闻热搜榜 今日热点
  • iis6.1的网站建设及权限设置推广文章的推广渠道
  • 团购营销型网站制作品牌推广的方式有哪些
  • 怀柔青岛网站建设网站推广的优化
  • 电子商务网站建设需要学什么seo快速优化软件
  • 做3d模型的叫什么牛的网站广州最新疫情最新消息
  • 中国企业培训网长春关键词优化排名
  • 兰州网站设计公司哪家最好百度权重怎么提高
  • 长沙优化网站搜索关键词推荐
  • 上海市工程建设协会网站360网站排名优化
  • 浙江省交通工程建设集团网站线上商城的推广方案
  • 百度收录网站线上销售渠道有哪几种
  • 温州网站建设推广网络营销课程培训机构
  • 外贸自建站多少钱新品推广计划与方案
  • 惠州网站建设制作厦门百度代理公司
  • 阿里云服务器登录入口seo网站推广价格
  • 网站建设工作成果怎么写广州seo关键词优化费用
  • 做网站哪个系统最好百度搜索链接
  • 怎么创建网站免费的新网站如何推广
  • 自助网站制作如何接广告赚钱
  • 汕头seo建站百度账号查询
  • 找建网站公司网站制作费用
  • 怎样建立企业网站免费可用的网站源码
  • 网站建设对企业的意义百家号关键词排名优化
  • 哪个基层司法所网站做的比较好整合营销传播策划方案
  • 松江品划做网站重庆百度
  • 网站建设报道稿信息流推广渠道有哪些
  • ui中国设计网站页面百度搜索智能精选入口