Heim  >  Artikel  >  Backend-Entwicklung  >  .htaccess verbirgt index.php und verwendet pathinfo, um Pfadfehler bei Ressourcendateien zu verhindern, ohne Fehler zu melden.

.htaccess verbirgt index.php und verwendet pathinfo, um Pfadfehler bei Ressourcendateien zu verhindern, ohne Fehler zu melden.

WBOY
WBOYOriginal
2016-12-01 01:27:421298Durchsuche

我的.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 verbirgt index.php und verwendet pathinfo, um Pfadfehler bei Ressourcendateien zu verhindern, ohne Fehler zu melden.

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

.htaccess verbirgt index.php und verwendet pathinfo, um Pfadfehler bei Ressourcendateien zu verhindern, ohne Fehler zu melden.

  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 verbirgt index.php und verwendet pathinfo, um Pfadfehler bei Ressourcendateien zu verhindern, ohne Fehler zu melden.

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

.htaccess verbirgt index.php und verwendet pathinfo, um Pfadfehler bei Ressourcendateien zu verhindern, ohne Fehler zu melden.

  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]

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn