好久以前遇到的问题,当时是在fl2440上移植 lighttpd

,成功启动 web

服务器后访问网页会出现下载提示框,原来浏览器并没有渲染 html

页面,而是把它当作文件下载来处理。

谷歌了好久都没有答案,结果放弃继续折腾 lighttpd

,转而移植 appweb+php

,直到上次在手机上成功用 termux

装上 wordpress

才重新解决了这个问题。

搞来搞去原来是http相应报文的锅,响应报文中必须以字段 Content-Type

指明媒体文件的类型,这样浏览器才能正确进行解析。

所以lighttpd的配置文件中必须有

mimetype.assign = (

".pdf" => "application/pdf",

".class" => "application/octet-stream",

".pac" => "application/x-ns-proxy-autoconfig",

".swf" => "application/x-shockwave-flash",

".wav" => "audio/x-wav",

".gif" => "image/gif",

".jpg" => "image/jpeg",

".jpeg" => "image/jpeg",

".png" => "image/png",

".svg" => "image/svg+xml",

".css" => "text/css",

".html" => "text/html",

".htm" => "text/html",

".txt" => "text/plain",

".dtd" => "text/xml",

".xml" => "text/xml"

)

接下来看看配置文件加和不加 之间有什么不同

含有 mimetype.assign

字段的响应报文头

-bash-4.4$ curl -I 127.0.0.1:10086

HTTP/1.1 200 OK

Content-Type: text/html

Accept-Ranges: bytes

ETag: "1739553501"

Last-Modified: Sun, 26 Feb 2017 01:21:41 GMT

Content-Length: 5

Date: Tue, 28 Feb 2017 12:55:27 GMT

Server: lighttpd/1.4.45

不含有 mimetype.assign

字段的响应报文头

-bash-4.4$ curl -I 127.0.0.1:10086

HTTP/1.1 200 OK

Content-Type: application/octet-stream

Accept-Ranges: bytes

Content-Length: 5

Date: Tue, 28 Feb 2017 12:56:46 GMT

Server: lighttpd/1.4.45

果不其然, Content-Type

导致了浏览器解析效果的差异性,这说明了浏览器并不能通过后缀名来直接识别网页文件,必须通过相应报文来配合 服务器 进行页面渲染。

浏览器无法渲染php,解决lighttpd运行后浏览器无法渲染html相关推荐

  1. python画图保存成html格式、用浏览器打开页面为空白_解决pyecharts运行后产生的html文件用浏览器打开空白...

    根据网站资源引用说明:pyecharts 使用的所有静态资源文件存放于 pyecharts-assets 项目中,默认挂载在 https://assets.pyecharts.org/assets/ ...

  2. python selenium 不打开浏览器_selenium+python自动化测试--解决无法启动IE浏览器及报错问题...

    前言:记录启动IE浏览器的报错及解决方法. 错误1: selenium.common.exceptions.WebDriverException: Message: 'IEDriverServer.e ...

  3. python启动不了浏览器_selenium+python自动化测试--解决无法启动IE浏览器及报错问题...

    前言:记录启动IE浏览器的报错及解决方法. 错误1: selenium.common.exceptions.WebDriverException: Message: 'IEDriverServer.e ...

  4. django运行后浏览器警告:DevTools 无法加载 SourceMap: 无法加载 http://127.0.0.1:800/skins/css/bootstrap.min.css.map:

    使用uwsgi启动Django项目后,出现了报错:DevTools 无法加载 SourceMap: 无法加载 http://127.0.0.1:800/skins/css/bootstrap.min. ...

  5. Chrome浏览器通过EasyPlayer播放多路flv视频流后浏览器崩溃是什么原因?

    EasyPlayer播放器系列项目是TSINGSEE青犀视频开发的极具开放性的播放器项目,用户可以根据自己的需求调用接口或者进行开发,实用性强,稳定性也非常优越,很多用户调用EasyPlayer播放器 ...

  6. uniapp项目连接自己本地后台运行到浏览器和手机的ip地址问题

    uniapp开发app端项目 报错Unhandled promise rejectionTypeError: Invalid attempt to destructure non-iterable i ...

  7. 如何解决系统更新后Safari Mac浏览器崩溃等的问题!

    Safari是苹果计算机的操作系统Mac OS中的浏览器,使用了KDE的KHTML作为浏览器的运算核心.Safari 是一款浏览器.一个平台,也是对锐意创新的公开邀请.无论在 Mac.PC 或 iPo ...

  8. 运行IE浏览器产生指令引用内存错误如何解决?

    运行IE浏览器经常会出现蓝屏或者提示"IE运行中0x--指令引用的0x--内存错误"这个问题的出现主要有几个方面: 一.如果使用盗版系统,有可能会出现这样的问题,建议:使用正版. ...

  9. qt程序在Linux下字体乱了,解决linux/Ubuntu下Qt creater 界面程序在编译运行后无法显示中文或中文乱码问题!...

    本文解决的主要是界面程序编译运行后无法显示中文的问题,如果在creater 中无法输入中文,下载个IBus或者搜狗之类的中文输入法即可解决! 首先说乱码问题,这个很好解决: 如果是在linux下打开W ...

最新文章

  1. PHP shell模式下执行PHP文件报错
  2. 肝货,详解 tkinter 图形化界面制作流程!
  3. asp.net分页控件使用详解【附实例下载】
  4. 1.2 内置异常类,异常方法
  5. 数论考试题(b) 求约数的约数的最大个数
  6. 洛谷1345 [Usaco5.4]奶牛的电信
  7. fabric shim安装合约_智能合约简介_智能合约开发_Hyperledger Fabric_开发指南_区块链服务 BaaS - 阿里云...
  8. docker多个容器一起打包_如何实现多个docker容器同时执行一条命令?
  9. cmd安装mysql_MySQL windows下cmd安装操作
  10. mysql配置文件改密码_mysql8.0 安装教程(自定义配置文件,密码方式已修改)
  11. Selenium爬虫 -- 无界面爬取:无头模式及其他参数
  12. 分布式事务解决方案之TCC方案
  13. ⭐️C#零基础到入门 ⭐️| 带你认识编程中的—23种设计模式 六大设计原则
  14. HP电脑的增霸卡功能操作详解
  15. keevi源地址_2019年越狱源地址排行是怎样的?
  16. 安装程序总是提示重启计算机,技巧|安装西门子软件反复提示重启电脑的解决方法...
  17. 个人使用计算机习惯、注意事项及日常维护
  18. 网页设计(三)——JavaScript
  19. 第四章 浮动 ① 笔记
  20. 小程序token有效期_微信小程序token过期时间后重新获取-微信小程序过期恢复步骤-微信小程序怎么找...

热门文章

  1. 想比较全面地学习 SAP XXX,能指导下从哪儿开始学习吗?
  2. 解决Chrome无法自动同步书签
  3. 游戏资讯:预计在10月底至11月内, 版号审批将会恢复
  4. 新年春节EDM邮件内容设计案例分享
  5. 面对华为清理34+老员工,我们该怎么做?
  6. 微信公众号配置测试账号获取code
  7. java excel生成_两种方式实现java生成Excel
  8. 【mcuclub】蓝牙模块-ECB02
  9. libpng16.so.16错误
  10. 关于微程序、微指令和微命令