浏览器无法渲染php,解决lighttpd运行后浏览器无法渲染html
好久以前遇到的问题,当时是在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相关推荐
- python画图保存成html格式、用浏览器打开页面为空白_解决pyecharts运行后产生的html文件用浏览器打开空白...
根据网站资源引用说明:pyecharts 使用的所有静态资源文件存放于 pyecharts-assets 项目中,默认挂载在 https://assets.pyecharts.org/assets/ ...
- python selenium 不打开浏览器_selenium+python自动化测试--解决无法启动IE浏览器及报错问题...
前言:记录启动IE浏览器的报错及解决方法. 错误1: selenium.common.exceptions.WebDriverException: Message: 'IEDriverServer.e ...
- python启动不了浏览器_selenium+python自动化测试--解决无法启动IE浏览器及报错问题...
前言:记录启动IE浏览器的报错及解决方法. 错误1: selenium.common.exceptions.WebDriverException: Message: 'IEDriverServer.e ...
- 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. ...
- Chrome浏览器通过EasyPlayer播放多路flv视频流后浏览器崩溃是什么原因?
EasyPlayer播放器系列项目是TSINGSEE青犀视频开发的极具开放性的播放器项目,用户可以根据自己的需求调用接口或者进行开发,实用性强,稳定性也非常优越,很多用户调用EasyPlayer播放器 ...
- uniapp项目连接自己本地后台运行到浏览器和手机的ip地址问题
uniapp开发app端项目 报错Unhandled promise rejectionTypeError: Invalid attempt to destructure non-iterable i ...
- 如何解决系统更新后Safari Mac浏览器崩溃等的问题!
Safari是苹果计算机的操作系统Mac OS中的浏览器,使用了KDE的KHTML作为浏览器的运算核心.Safari 是一款浏览器.一个平台,也是对锐意创新的公开邀请.无论在 Mac.PC 或 iPo ...
- 运行IE浏览器产生指令引用内存错误如何解决?
运行IE浏览器经常会出现蓝屏或者提示"IE运行中0x--指令引用的0x--内存错误"这个问题的出现主要有几个方面: 一.如果使用盗版系统,有可能会出现这样的问题,建议:使用正版. ...
- qt程序在Linux下字体乱了,解决linux/Ubuntu下Qt creater 界面程序在编译运行后无法显示中文或中文乱码问题!...
本文解决的主要是界面程序编译运行后无法显示中文的问题,如果在creater 中无法输入中文,下载个IBus或者搜狗之类的中文输入法即可解决! 首先说乱码问题,这个很好解决: 如果是在linux下打开W ...
最新文章
- PHP shell模式下执行PHP文件报错
- 肝货,详解 tkinter 图形化界面制作流程!
- asp.net分页控件使用详解【附实例下载】
- 1.2 内置异常类,异常方法
- 数论考试题(b) 求约数的约数的最大个数
- 洛谷1345 [Usaco5.4]奶牛的电信
- fabric shim安装合约_智能合约简介_智能合约开发_Hyperledger Fabric_开发指南_区块链服务 BaaS - 阿里云...
- docker多个容器一起打包_如何实现多个docker容器同时执行一条命令?
- cmd安装mysql_MySQL windows下cmd安装操作
- mysql配置文件改密码_mysql8.0 安装教程(自定义配置文件,密码方式已修改)
- Selenium爬虫 -- 无界面爬取:无头模式及其他参数
- 分布式事务解决方案之TCC方案
- ⭐️C#零基础到入门 ⭐️| 带你认识编程中的—23种设计模式 六大设计原则
- HP电脑的增霸卡功能操作详解
- keevi源地址_2019年越狱源地址排行是怎样的?
- 安装程序总是提示重启计算机,技巧|安装西门子软件反复提示重启电脑的解决方法...
- 个人使用计算机习惯、注意事项及日常维护
- 网页设计(三)——JavaScript
- 第四章 浮动 ① 笔记
- 小程序token有效期_微信小程序token过期时间后重新获取-微信小程序过期恢复步骤-微信小程序怎么找...