Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用.htaccess重定向整个站点,但不包括sitemap.xml和robots.txt_Php_Regex_.htaccess_Router - Fatal编程技术网

Php 使用.htaccess重定向整个站点,但不包括sitemap.xml和robots.txt

Php 使用.htaccess重定向整个站点,但不包括sitemap.xml和robots.txt,php,regex,.htaccess,router,Php,Regex,.htaccess,Router,嘿,堆栈溢出器 我使用php、mysql和php路由器概念创建了一个博客 所有进入index.php的请求都是从数据库中动态获取数据,然后显示给他们 我的问题是,所有请求都将指向index.php,但除了站点地图、机器人和/admin文件夹外,我需要重定向 我的文件夹结构: -example.com -admin -assets -function -views .htaccess index.php config.php sitemap.php robots.txt 我的访问代码:

嘿,堆栈溢出器

我使用php、mysql和php路由器概念创建了一个博客

所有进入index.php的请求都是从数据库中动态获取数据,然后显示给他们

我的问题是,所有请求都将指向index.php,但除了站点地图机器人/admin文件夹外,我需要重定向

我的文件夹结构:

-example.com
 -admin
 -assets
 -function
 -views
.htaccess
index.php
config.php
sitemap.php
robots.txt
我的访问代码:

<filesMatch ".(css|jpg|jpeg|png|gif|js|ico)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>

<IfModule mod_rewrite.c>
RewriteEngine on

#RewriteCond %{THE_REQUEST} /([^.]+)\.php [NC]
#RewriteRule ^ /%1 [NC,L,R]

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [NC,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ index.php [QSA,L]

</IfModule>

标题集缓存控制“最大年龄=2592000,公共”
重新启动发动机
#RewriteCond%{THE_REQUEST}/([^.]+)\.php[NC]
#重写规则^/%1[NC,L,R]
RewriteCond%{REQUEST_FILENAME}.php-f
重写规则^%{REQUEST_URI}.php[NC,L]
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
重写规则^(+)$index.php[QSA,L]

行的
重写引擎下方,您可以添加以下规则:

RewriteCond %{THE_REQUEST} \s/+(?:sitemap\.php|robots\.txt|admin/) [NC]
RewriteRule ^ - [L]