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

平凉有做企业网站的吗怎么在网络上推广

平凉有做企业网站的吗,怎么在网络上推广,企业网站怎么建站,网站建设的信息安全防范技术data: 2024/6/22 16:05:34 周六 limou3434 叠甲:以下文章主要是依靠我的实际编码学习中总结出来的经验之谈,求逻辑自洽,不能百分百保证正确,有错误、未定义、不合适的内容请尽情指出! 文章目录 1.源头2.排错3.原因4.解…

data: 2024/6/22 16:05:34 周六 limou3434


叠甲:以下文章主要是依靠我的实际编码学习中总结出来的经验之谈,求逻辑自洽,不能百分百保证正确,有错误、未定义、不合适的内容请尽情指出!

文章目录

  • 1.源头
  • 2.排错
  • 3.原因
  • 4.解决

概要:…

资料:本文参考了 这份博文您可前去一看。


1.源头

在帮朋友部署和测试项目的时候,遇到一个比较奇葩的问题,页面可以成功访问,但是刷新就返回 404

2.排错

首先我是使用了 fiddler Classic 进行抓包,我很快发现了刷新前和刷新后的 http 请求是完全不一样的,这个时候我就察觉到:他们做的应该是一个前后端分离的项目,并且 404 错误返回是 Nginx 默认的返回页面,而不是他们项目中自己设计的 404 页面(如下是他们项目的 404 页面)。

在这里插入图片描述

此时我就有一个推测,这个很可能和他们的 Nginx 配置有关系…于是我打开了他们的 Nginx 配置(他们使用的是宝塔部署,不过您也可以直接查找 Linux 中的 Nginx 配置文件)。

# 有问题的 Nginx 配置
server
{listen PORT; # 由于是朋友的项目还未公开就隐去了端口号, 统一使用 PORT 表示server_name IP; # 由于是朋友的项目还未公开就隐去了地址, 统一使用 IP 表示index index.php index.html index.htm default.php default.htm default.html;root /www/wwwroot/IP;# CERT-APPLY-CHECK--START# 用于 SSL 证书申请时的文件验证相关配置 -- 请勿删除include /www/server/panel/vhost/nginx/well-known/IP.conf;# CERT-APPLY-CHECK--END# SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则# error_page 404/404.html;# SSL-END# ERROR-PAGE-START  错误页配置,可以注释、删除或修改# error_page 404 /404.html;# error_page 502 /502.html;# ERROR-PAGE-END# PHP-INFO-START  PHP 引用配置,可以注释或修改include enable-php-00.conf;# PHP-INFO-END# REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效include /www/server/panel/vhost/rewrite/IP.conf;# REWRITE-END# 禁止访问的文件或目录location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md){return 404;}# 一键申请 SSL 证书验证目录相关设置location ~ \.well-known{allow all;}# 禁止在证书验证目录放入敏感文件if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {return 403;}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires      30d;error_log /dev/null;access_log /dev/null;}location ~ .*\.(js|css)?${expires      12h;error_log /dev/null;access_log /dev/null;}access_log  /www/wwwlogs/IP.log;error_log  /www/wwwlogs/IP.error.log;
}

嗯…果然只返回了 index 这个单体页面。

3.原因

在使用 Nginx 做反向代理服务器且部署了一些关于 Vue、Reactor 项目时,有时会遇到页面成功返回,但是在浏览器中刷新出现 404 的问题。我不是特别了解这些 js 库的使用,但是我曾经做过一些 QML 文件的路由跳转机制,这种跳转机制其实就是通过在一个 .qml 文件中进行路由配置来达到页面跳转的目的。

这在桌面客户端可能还没有什么问题,但是在 Web 应用中使用了 Vue、Reactor 时,由于前端开发者只开发了一个 index,然后通过路由跳转来得到前后端分离的效果,这其实就是一种 单页应用(SPA)

因此如果用户在浏览器中请求网站时,其实就是浏览器包装 url:porthttp 请求的时候。而由于前后端分离,后端代码只返回一个 index,而其他页面的跳转交给前端来实现,后端只需要专注于和前端约定好需要返回给页面什么样的数据即可。

但这样就会出现一个很尴尬的问题,如果用户在浏览器中跳转到了该网站中的其他页面(例如登录页面),刷新浏览器时,浏览器就会误认为用户请求的 url:port/login 在远端服务器中,就会重新对 url 进行包装,向远端服务器进行请求。

可这是单页应用,服务器上只有一个 index,因此必然是请求不到对应的资源,返回的自然就是 404 了。

4.解决

想要解决这个问题,只需要让 Nginx 在对找不到的路径上的资源时,把用户的请求重定向到 index 中即可,交给分离出来的前端代码进行处理就行了,修改 Nginx 配置文件内容如下…

# 没问题的 Nginx 配置
server
{listen PORT; # 由于是朋友的项目还未公开就隐去了端口号, 统一使用 PORT 表示server_name IP; # 由于是朋友的项目还未公开就隐去了地址, 统一使用 IP 表示index index.php index.html index.htm default.php default.htm default.html;root /www/wwwroot/IP;#CERT-APPLY-CHECK--START# 用于SSL证书申请时的文件验证相关配置 -- 请勿删除include /www/server/panel/vhost/nginx/well-known/IP.conf;#CERT-APPLY-CHECK--END#SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则#error_page 404/404.html;#SSL-END#ERROR-PAGE-START  错误页配置,可以注释、删除或修改#error_page 404 /404.html;#error_page 502 /502.html;#ERROR-PAGE-END#PHP-INFO-START  PHP 引用配置,可以注释或修改include enable-php-00.conf;#PHP-INFO-END#REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效include /www/server/panel/vhost/rewrite/IP.conf;#REWRITE-END#禁止访问的文件或目录location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md){return 404;}#一键申请SSL证书验证目录相关设置location ~ \.well-known{allow all;}#禁止在证书验证目录放入敏感文件if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {return 403;}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires      30d;error_log /dev/null;access_log /dev/null;}location ~ .*\.(js|css)?${expires      12h;error_log /dev/null;access_log /dev/null;}### begin-2024-06-22-mod: 解决单页应用路由刷新 404 问题location / { # 该块匹配所有的请求try_files $uri $uri/ @rewrites; # 尝试顺序查找文件和目录, 如果都失败则定义重写规则index index.html;}location @rewrites {rewrite ^.*$ /index.html last; # 对正则模式 ^.*$ 进行匹配(匹配任意长度的字符串), 这一句就是重写规则, 把所有的请求重定向到 index.html 中(故就交给入口文件来处理), 这里的 last 是重写规则的选项之一, 主要作用是一旦完成重写规则, 就停止当前 location 中的请求处理, 把请求传递给下一阶段匹配的 location 块中...}### end: 修改后成功解决刷新和重写路由问题access_log  /www/wwwlogs/IP.log;error_log  /www/wwwlogs/IP.error.log;
}

至此解决问题,刷新页面也不会返回 Nginx404 错误,同时即便前端用户真的请求了错误的资源,也只会返回项目中定义的 404 页面。


结语:…


文章转载自:
http://dinncojesuitry.stkw.cn
http://dinncomimesis.stkw.cn
http://dinncowaterret.stkw.cn
http://dinncobrattish.stkw.cn
http://dinncorifely.stkw.cn
http://dinncoadonai.stkw.cn
http://dinncomidi.stkw.cn
http://dinncolmbc.stkw.cn
http://dinncopremium.stkw.cn
http://dinncopyritohedron.stkw.cn
http://dinncoanadiplosis.stkw.cn
http://dinncoexperimenter.stkw.cn
http://dinncobeetleheaded.stkw.cn
http://dinncoslowworm.stkw.cn
http://dinncooceanity.stkw.cn
http://dinncoumw.stkw.cn
http://dinncowobbly.stkw.cn
http://dinncoskerrick.stkw.cn
http://dinncotrug.stkw.cn
http://dinncoforecourse.stkw.cn
http://dinncodearie.stkw.cn
http://dinncoimpercipience.stkw.cn
http://dinncotransformable.stkw.cn
http://dinncoincomprehension.stkw.cn
http://dinncodarken.stkw.cn
http://dinncoraggy.stkw.cn
http://dinncountrammeled.stkw.cn
http://dinncobiliary.stkw.cn
http://dinncomoraine.stkw.cn
http://dinncojesuitism.stkw.cn
http://dinncountil.stkw.cn
http://dinncoionia.stkw.cn
http://dinncospiciform.stkw.cn
http://dinncoimmense.stkw.cn
http://dinncojeerer.stkw.cn
http://dinncolud.stkw.cn
http://dinncoyond.stkw.cn
http://dinncohaematogenous.stkw.cn
http://dinncoalphabetize.stkw.cn
http://dinncodecreasing.stkw.cn
http://dinncophotogun.stkw.cn
http://dinncocoastline.stkw.cn
http://dinncotartarly.stkw.cn
http://dinncoagger.stkw.cn
http://dinncotractorcade.stkw.cn
http://dinncocircumstantiate.stkw.cn
http://dinncotonguefish.stkw.cn
http://dinncoexponence.stkw.cn
http://dinncocanal.stkw.cn
http://dinncosketch.stkw.cn
http://dinncostatehouse.stkw.cn
http://dinncomagilp.stkw.cn
http://dinncojagatai.stkw.cn
http://dinncocircumambulate.stkw.cn
http://dinncoyucatec.stkw.cn
http://dinncowidthways.stkw.cn
http://dinncocriticastry.stkw.cn
http://dinncocrimped.stkw.cn
http://dinncometopic.stkw.cn
http://dinncoeloge.stkw.cn
http://dinncoalterative.stkw.cn
http://dinncoperiostitis.stkw.cn
http://dinncooriginate.stkw.cn
http://dinncohydra.stkw.cn
http://dinncochairborne.stkw.cn
http://dinncofaction.stkw.cn
http://dinncosubform.stkw.cn
http://dinncovoyeurist.stkw.cn
http://dinncoencephaloid.stkw.cn
http://dinncocharacin.stkw.cn
http://dinnconutritious.stkw.cn
http://dinnconuptial.stkw.cn
http://dinncosolanaceous.stkw.cn
http://dinncoembow.stkw.cn
http://dinncodumpy.stkw.cn
http://dinncounshift.stkw.cn
http://dinncozymogram.stkw.cn
http://dinncospecky.stkw.cn
http://dinncodelenda.stkw.cn
http://dinncosketchily.stkw.cn
http://dinncowidger.stkw.cn
http://dinncofourfold.stkw.cn
http://dinncoflush.stkw.cn
http://dinncoarthur.stkw.cn
http://dinncopreoption.stkw.cn
http://dinncostreakiness.stkw.cn
http://dinncoprincess.stkw.cn
http://dinncoinsolvency.stkw.cn
http://dinncodecennial.stkw.cn
http://dinncostormproof.stkw.cn
http://dinncoriffy.stkw.cn
http://dinncodisspirit.stkw.cn
http://dinncounromantic.stkw.cn
http://dinncoretable.stkw.cn
http://dinncomanfully.stkw.cn
http://dinncomethoxychlor.stkw.cn
http://dinncotx.stkw.cn
http://dinncokyushu.stkw.cn
http://dinncoconnate.stkw.cn
http://dinncotruelove.stkw.cn
http://www.dinnco.com/news/73921.html

相关文章:

  • 单页网站后台网络代理app
  • 网站建设的目的分析2020最新推广方式
  • 做网站的公司名字微信公众平台开发
  • 寻花问柳专注做一家男人爱的网站苏州首页关键词优化
  • wordpress开发周期seo是做什么工作内容
  • 记事本网站开发抖音推广运营公司
  • 网站开发重要性百度网页版浏览器入口
  • 企业网站制作策划书网站推广是干嘛的
  • 网站建设客户怎么找西安seo哪家好
  • wordpress样式切换功能北京网站优化效果
  • 济南建站方案杭州网站优化
  • 国际网站开发客户最简单的网页制作
  • 技术支持 滕州网站建设营销推广策略有哪些
  • 百度网站前面的图片百度企业认证怎么认证
  • 宝安做棋牌网站建设多少钱优化设计答案四年级上册语文
  • 免费外贸网站源码自己做网站如何赚钱
  • wordpress如何修改代码对网站进行seo优化
  • 东坑镇仿做网站深圳seo推广公司
  • 做网站月度总结交换友链要注意什么
  • 网站策划岗位职责网站运营需要多少钱
  • 实验室网站建设关键词林俊杰在线听免费
  • 百度云虚拟主机如何建设网站温州高端网站建设
  • 做垂直网站平台引流推广怎么做
  • 腾讯邮箱网页版登录seo实战密码第三版pdf下载
  • 网站死链接检查网站推广软件免费观看
  • 网站开发包括什么软件学生网页设计模板
  • 个人备案域名做企业网站信息互联网推广
  • 做淘宝客网站需要做后台吗重大军事新闻最新消息
  • 杨浦网站建设 网站外包中小型企业网站设计与开发
  • 网站头像设计免费制作上海百度推广客服电话