PHP 扩展无法在 Web 目录中运行,而 .html 扩展可以运行

标签 php apache .htaccess codeigniter

我安装了 Codeigniter,根目录下有一个“sandbox”目录。在沙箱中我有文档“poster.html”。如果我将此文档的扩展名更改为 .php,则会收到 CI 404 错误。如果我将其保留为 .html,它就可以工作!

编辑:我刚刚确认 .php 扩展名在任何排除的目录中都不起作用,例如: css/或 script/。 根目录下的 .htaccess 文件如下所示:

RewriteEngine on
RewriteCond $1 !^(index\.php|sandbox|css|scripts|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

当前根目录结构:

application/
system/
css/
sandbox/
scripts/
.htaccess
index.php

最佳答案

我认为您的问题要么是某个地方出现拼写错误,要么是 ROUTE 冲突。 我刚刚使用新的 2.1.4 CI 安装重新创建了它,并创建了一个包含 php 文件的沙箱文件夹。

我可以确认它 100% 正常工作。仔细检查你的拼写。您不应该根据您的.htaccess

获得/sandbox/文件夹的CI 404页面

作为替代调试方法,打开 ci 日志记录并检查 /application/logs 以了解有关抛出 404 错误的详细信息。

关于PHP 扩展无法在 Web 目录中运行,而 .html 扩展可以运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18831413/

相关文章:

.htaccess - 重写规则 - a.php?a=123 到/b/123

php - 如何在 Laravel Passport 中启用客户端凭据授予类型

apache - htaccess 重定向的奇怪行为

apache - apache 文件中使用什么语言?

apache - 在 Apache Solr 中设置默认搜索字段

wordpress - WordPress : Rewrite Engine not allowed here 中的 .htaccess 错误

php - 何时在 Laravel 4 中使用模型

php - imagecopy - 裁剪图像而不是调整大小

JavaScript 异步无法正常工作 WordPress

.htaccess - 将 ExpiresByType 添加到 .htaccess 但 PageSpeed Insights 仍然声明我应该 "Leverage Browser Caching"