php - 对现有文件的请求执行 index.php

标签 php apache

我使用以下 .htaccess 代码在网站中启用友好 URL。

<IfModule mod_rewrite.c>

    RewriteEngine on
    RewriteBase /

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?$1 [L]

</IfModule>

代码工作正常,但有一个小异常(exception)。当我在浏览器中请求一个文件(即图像)时,浏览器会加载它(如我所料),但同时会执行 index.php。

我想知道为什么。

最佳答案

事实证明,浏览器正在发出 GET/favicon.ico 请求,因为根据 .htaccess 中的规则,服务器上没有具有该名称的文件> 文件,请求被重定向到 /index.php

关于php - 对现有文件的请求执行 index.php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7683705/

相关文章:

java - 部署WAR文件时的Tomcat 7.0.52 JNDI错误

linux - 无法访问 Linux Azure VM 上的 apache 页面

php - 是否可以使用 html/php 限定提交范围?

php - Laravel 5 环境总是 'Production' 而实际上是 'Local'

php - Zend Framework - ErrorHandler 似乎没有按预期工作

javascript - 如何加载 window.open ('url' ) once only PHP & JQuery

php - 在 MacOSX 10.10 (yosemite) 上编译 php5.5.18 时出错

php - CakePHP:没有这样的文件或目录(试图通过 unix:///var/mysql/mysql.sock 连接)

php - Apache、PHP 和 MySQL 可移植?

apache - 如何为我的网站制作友好的网址?