加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

root和子文件夹中的.htaccess,每个都重定向到自己的index.php

发布时间:2020-12-13 18:51:28 所属栏目:Linux 来源:网络整理
导读:我为一个看似重复的问题道歉,但我看过的几十个问题实际上都没有同样的问题. 我有以下目录结构: /.htaccess/index.php/subfolder/.htaccess/subfolder/index.php 我希望所有页面请求都由/index.php处理,除非请求启动/子文件夹,在这种情况下它应由/subfolder/
我为一个看似重复的问题道歉,但我看过的几十个问题实际上都没有同样的问题.

我有以下目录结构:

/.htaccess
/index.php
/subfolder/.htaccess
/subfolder/index.php

我希望所有页面请求都由/index.php处理,除非请求启动/子文件夹,在这种情况下它应由/subfolder/index.php处理

>例如/ abc被重写为/index.php?u=abc
>例如/ subfolder / def被重写为/subfolder/index.php?u=def

我已经绕过这个圈子了,所以任何帮助都将受到大力赞赏.

编辑:忘了提问题!
子文件夹中的请求由根index.php处理,而不是子文件夹. (/ subfolder请求除外)

当前文件内容

/.htaccess

Options -Indexes -MultiViews +FollowSymLinks

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/admin
RewriteRule ^(.*)$/index.php?u=$1 [NC,QSA]

/subfolder/.htaccess

RewriteBase /admin/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$/admin/index.php?u=$1 [NC,QSA]

解决方法

你的root .htaccess是这样的:
Options -Indexes -MultiViews +FollowSymLinks
RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(?!admin/)(.+)$/index.php?u=$1 [NC,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^admin/(.+)$/admin/index.php?u=$1 [NC,L]

对于这个简单的要求,管理文件夹中不需要.htaccess.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读