我的文件夹结构如下所示:
/.htaccess
/admin
/admin/api
/admin/admin
index.html (Angular JS app)
所以我需要做以下重写:
/admin/admin
/admin
/admin/api/*
(不重写)/admin/api/*
/{everything else}
index.html
醇>
如何在root .htaccess中执行此操作?
到目前为止,我已经:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !index
RewriteRule (.*) index.html [L]
</IfModule>
但是这并没有处理/admin/admin
到/admin
的重写。任何人都可以帮忙吗?
答案 0 :(得分:0)
您可以使用:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^admin/?$ admin/admin [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/(index|admin)
RewriteRule ^ index.html [L]
</IfModule>
这假设/admin/
文件夹中没有.htaccess。如果有,那么在那里使用这个规则:
RewriteEngine On
RewriteBase /admin/
RewriteRule ^/?$ admin [L]