php - 我的 .htaccess 有什么问题吗?仍尝试将文件作为 Controller 加载。自定义 MVC PHP

标签 php .htaccess url-routing favicon

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php

它尝试加载 /favicon.ico 作为 Controller ,因为我的根文件夹中不存在 favicon.ico。我如何重写上面的 htaccess 以不加载 favicon.ico 作为 Controller 但忽略它?

它提出了一个我不希望它执行的额外请求。

最佳答案

您可以将其添加到 htaccess 以忽略重写 favicon.ico 以及括号中带有扩展名的任何内容

RewriteCond %{REQUEST_URI} !\.(gif|jpe?g|png|ico)$ [NC]

所以你的 htaccess 看起来像

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !\.(gif|jpe?g|png|ico)$ [NC]
RewriteRule ^(.*)$ /index.php

关于php - 我的 .htaccess 有什么问题吗?仍尝试将文件作为 Controller 加载。自定义 MVC PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18065131/

相关文章:

Nginx 或 PHP FPM 忽略 php.ini 中的 memory_limit

.htaccess - 避免根级别 301 上的过多重定向

javascript - 路由在 Angular.js 中不起作用

php - AJAX Post 突然停止工作?

php - 使用 ajax、sql 和 php 的动态下拉列表

javascript - AJAX POST 返回完整的 PHP,而不是回显字符串

php - 如何使用 XAMPP 将 HTTP 重定向到 HTTPS

php - htaccess - 将所有字符作为 get 请求

javascript - 在 Backbone.js 中获取 URL 片段而不是哈希

node.js - Express js路由中的过滤器