Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.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的文件夹_Php_Apache_.htaccess_Mod Rewrite_Redirect - Fatal编程技术网

Php 将根目录重定向到具有.htaccess的文件夹

Php 将根目录重定向到具有.htaccess的文件夹,php,apache,.htaccess,mod-rewrite,redirect,Php,Apache,.htaccess,Mod Rewrite,Redirect,我有以下项目结构: /app /api /css /img /js 我想将/app文件夹中的所有请求重定向到子文件夹/api。我尝试了以下.htaccess代码,但没有成功: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /api/index.php/$1 [L] 我的Apache已启用Mod_重写。

我有以下项目结构:

/app
    /api
    /css
    /img
    /js
我想将
/app
文件夹中的所有请求重定向到子文件夹
/api
。我尝试了以下.htaccess代码,但没有成功:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /api/index.php/$1 [L]

我的Apache已启用Mod_重写。有什么想法吗?

将其放入
/api/.htaccess
文件:

RewriteEngine on
RewriteBase /app/

RewriteRule ^((?!api/index\.php/).+)$ api/index.php/$1 [NC,L,R]

这不会重定向,它只会默默地重写,而不会更改浏览器中的URL。您在浏览器中输入了什么URL?
http://app/
,但我认为我做错了。我需要一个页面重定向,而不是URL重写。
重定向匹配301^/app/$/app/api上的重写引擎
重定向匹配
不需要
上的重写引擎
,这将从
DocumentRoot
工作,而不是从
/api/.htaccess
文件工作