index.php 在下载文件时没有打开和运行
Posted
技术标签:
【中文标题】index.php 在下载文件时没有打开和运行【英文标题】:index.php is not opening and running as download the file 【发布时间】:2011-01-27 16:03:35 【问题描述】:当我尝试导航到http://localhost/project/admin 的 php 脚本时,我希望在我的网络浏览器中看到脚本结果。
相反,我看到一个用于下载文件的对话框,并显示以下消息:
您已选择打开
<filename>
,即:application/x-httpd-php
来自:http://localhost Firefox 应该如何处理这个文件?Open with...
•Save...
•等等
知道发生了什么吗?
【问题讨论】:
你得到答案了吗?是哪一个? 【参考方案1】:听起来好像发送了不正确的Content-type
标头。此标头为浏览器接收的数据设置 mime 类型,如果浏览器没有处理程序来呈现特定的 mime 类型,它将要求打开/保存文件。
我将首先检查您的 PHP 文件中是否存在 header()
语句和错误输入的内容类型。
【讨论】:
看起来 apache 将此 PHP 文件视为 application/x-httpd-php 而不是 text/html(/xhtml、html+xml 等)。 如果 php 文件没有被执行,则不会对 php 文件进行任何修改以使其被执行。这是一个 apache 级别的问题。【参考方案2】:服务器上未正确安装 PHP 或 Apache 未使用 mod_php
如果在 IIS 中发生这种情况。我会说 mimetype 设置不正确,服务器不知道如何处理扩展名“.php”
【讨论】:
以上是关于index.php 在下载文件时没有打开和运行的主要内容,如果未能解决你的问题,请参考以下文章
正确处理浏览器在下载文件时HTTP头的编码问题(Content-Disposition)
Facebook 在 uitableview 中加载相册,但未在下一个收藏视图中打开
新手上路:在配置apache php mysql完之后,尝试打开index.php时总是将index.php下载