【问题标题】:URL rewrite for users and admin directory用户和管理目录的 URL 重写
【发布时间】:2011-04-16 08:08:38
【问题描述】:

我的网络根目录如下所示

  • /万维网
    • /管理员
      • index.php
    • index.php
    • .htaccess

我想做的事:

  1. /anything-here 类型的所有 URL 都应该转到 index.php
  2. /admin/anything-here 类型的所有 URL 都应转到 admin/index.php
  3. 进入管理部分时的用户身份验证

现在这就是我的 .htacces 中的内容

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

# For users
RewriteCond %{REQUEST_URI} !/admin/.*
RewriteRule .* index.php

【问题讨论】:

    标签: url mod-rewrite rewrite


    【解决方案1】:

    您可以添加 BasicHTTPAuthentication 部分,因为您可以在 admin .htaccess 中的多个站点上找到它

    你可以使用,

    RewriteCond %{SCRIPT_FILENAME} !-d
    RewriteCond %{SCRIPT_FILENAME} !-f
    RewriteRule ^admin/.*$ /admin/index.php [L]
    
    RewriteCond %{SCRIPT_FILENAME} !-d
    RewriteCond %{SCRIPT_FILENAME} !-f
    RewriteRule ^.*$ /index.php [L]
    

    .htaccess 基本身份验证将负责子目录中的身份验证。

    【讨论】:

      【解决方案2】:

      只需将前缀 admin/ 设为可选:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-05-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多