.htaccess 隐藏index.php 并使用pathinfo 资源文件路径错误不报错

WBOY
发布: 2023-03-02 12:38:01
原创
1294 人浏览过

我的.htaccess文件配置

<code>RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1</code>
登录后复制
登录后复制

访问 local.com/admin/index解析正确

访问 资源文件 local.com/admin/index.css 时把资源文件当做了PATH_INFO请求,实际不存在这个CSS 文件应该报404错误。但是现在返回的是200

麻烦高手指点下我这种情况 .htaccess 文件给怎么配置


问题补充:

采用楼下这位哥 @xialeistudio 给的配置出现以下问题:

  1. 访问 frame.com/index.css 并不存在 index.css 出现了报错。ok

.htaccess 隐藏index.php 并使用pathinfo 资源文件路径错误不报错

  1. 访问 frame.com/pathtest/index.css 并不存在 index.css 但是没有报错。

.htaccess 隐藏index.php 并使用pathinfo 资源文件路径错误不报错

  1. 问题归纳:当访问根路径下不存在的资源文件是可以报错;但是访问不在根路径的不存在无资源文件时并没有报错。

回复内容:

我的.htaccess文件配置

<code>RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1</code>
登录后复制
登录后复制

访问 local.com/admin/index解析正确

访问 资源文件 local.com/admin/index.css 时把资源文件当做了PATH_INFO请求,实际不存在这个CSS 文件应该报404错误。但是现在返回的是200

麻烦高手指点下我这种情况 .htaccess 文件给怎么配置


问题补充:

采用楼下这位哥 @xialeistudio 给的配置出现以下问题:

  1. 访问 frame.com/index.css 并不存在 index.css 出现了报错。ok

.htaccess 隐藏index.php 并使用pathinfo 资源文件路径错误不报错

  1. 访问 frame.com/pathtest/index.css 并不存在 index.css 但是没有报错。

.htaccess 隐藏index.php 并使用pathinfo 资源文件路径错误不报错

  1. 问题归纳:当访问根路径下不存在的资源文件是可以报错;但是访问不在根路径的不存在无资源文件时并没有报错。

<code>RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\.(css|js|png|jpeg|gif)$
RewriteRule ^(.*)$ index.php/$1 [L]</code>
登录后复制

给你个配置参考下:

RewriteEngine on
RewriteBase /
RewriteRule (.*.css$|.*.js$|.*.jpg$|.*.gif$|.*.png$|.*.ico$|.*.swf$|.*.txt$) $1 [L]
RewriteRule (.*) index.php [L]

相关标签:
php
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!