Php htaccess将文件夹的所有通信重定向到其他文件夹,并将名称作为标题
我想更改我的web应用的文件夹结构 目前的结构是Php htaccess将文件夹的所有通信重定向到其他文件夹,并将名称作为标题,php,apache,.htaccess,redirect,mod-rewrite,Php,Apache,.htaccess,Redirect,Mod Rewrite,我想更改我的web应用的文件夹结构 目前的结构是 /websites .subdomain1 .index.html .app .htaccess index.php 域名系统: ->指向子域1的文件夹 现在在当前的结构中,php位于同一个文件夹中,我想将其移出,问题是我需要将所有请求重定向到旧目录,该目录不是要重定向的文件,并且在标题中包含子域 范例 当前API端点 http://subdomain1.website.com/a
/websites
.subdomain1
.index.html
.app
.htaccess
index.php
域名系统:
->指向子域1的文件夹
现在在当前的结构中,php位于同一个文件夹中,我想将其移出,问题是我需要将所有请求重定向到旧目录,该目录不是要重定向的文件,并且在标题中包含子域
范例
当前API端点
http://subdomain1.website.com/app/token
我希望该请求不是转到/subdomain1/app/index.php,而是转到/api/index.php,并将“subdomain1”作为标题
这样我的文件夹结构就变成了
/website
.subdomain1
.index.html
/api
index.php
所有到旧/app文件夹的流量都被重定向到以子域为标题的新文件夹
当前htaccess
Options -MultiViews -Indexes
SetOutputFilter DEFLATE
DirectoryIndex index.php
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^$ index.php [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
</ifModule>
选项-多视图-索引
SetOutputFilter放气
DirectoryIndex.php
重新启动发动机
重写规则^$index.php[QSA,L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则^(.*)$index.php[QSA,L]
更改您当前的.htaccess访问权限:
Options -MultiViews -Indexes
SetOutputFilter DEFLATE
DirectoryIndex index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ /api/index.php [L]
这个.htaccess在哪里?此外,我在您的目录结构中没有看到
api
文件夹它在应用程序文件夹中,我想在根目录下创建它,并将所有流量重定向到它。@anubhava我编辑了这个问题以澄清问题。谢谢,我可以包括像“../”这样的盟友吗?因为新的index.php位于.././v1/api/index.php,这样行吗?是的,您可以在这里使用。/
,或者在目标中使用完整路径,如/path/to/v1/api/index.php