首页 > 解决方案 > 使用 .htaccess 隐藏 localhost php 路径

问题描述

如何使用 .htaccess 隐藏我的目录路径我不知道该怎么做

例子:

localhost/MainFolder/SubFolder/adminFolder/dashboard.php

我想查看我的网址或类似这样的输出

localhost/MainFolder/SubFolder

标签: php.htaccessxampplocalhost

解决方案


您可以执行以下操作:

RewriteEngine On

RewriteCond %{REQUEST_URI} ^/?MainFolder/SubFolder/?$ [NC]
RewriteRule ^.+$ /MainFolder/SubFolder/adminFolder/dashboard.php/?ir=true [L,QSA]

RewriteCond %{REQUEST_URI} ^/?MainFolder/SubFolder/adminFolder/dashboard.php [NC]
RewriteCond %{QUERY_STRING} !^.*?ir=true.*$
RewriteRule ^.+$ /MainFolder/SubFolder/?ir=true [L,R=301,QSA]

演示

在上面的代码片段中,为了避免过多的重定向问题,我们在内部传递了一个查询参数,以确保我们不会在循环中结束。如果我们找到参数ir=true,则不满足任何规则并执行代码,否则通过添加查询参数ir=true并使服务器意识到您从先前的重写规则本身重定向,它会按预期工作。

解决此问题的最佳方法是避免对 的目录访问权限,adminFolder并在其中包含 index.phpSubfolder并调用adminFolder/dashboard.phpusing require_once()


推荐阅读