概述:
我想将访问者重定向到目录结构内的默认页面(index.html),以显示何时使用UITableView
文件访问目录(截至目前的当前目录index.html正在加载)。
但是当我在角度应用程序中打开.htaccess
时会出现错误。
控制台错误:
应用程序的目录结构:
$locationProvider.html5Mode(true)
public_html public_html
--prod
--public
--app
--controllers
--directives
--services
--app.config.js
--index.html
--.htaccess
.htaccess
.htaccess:
=>
此DirectoryIndex prod/public/index.html
用于直接使用域名重定向应用程序页面(.htaccess
)上的访问者,截至目前用户访问域时当前目录(prod/public/index.html
) index.html正在加载。
public_html public_html
prod =>
.htaccess:
=>
prod <IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /prod/public/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /prod/public/#/$1
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/prod/$1 [L,R=301]
</IfModule>
公开 =>
index.html:
=>
一切正常如果我从<base href="/prod/public/">
文件中删除了$locationProvider.html5Mode(true)
。因此,当我注释掉app.config.js
代码时,一切都在$locationProvider
模式下正常运行。我可以毫无问题地到达#
等。一旦我将/#/abc
部分放回去,就没有任何事情发生。
Stack Overflow上的相关问题没有成功:
答案 0 :(得分:1)
内部public_html => .htaccess
改为使用此规则:
DirectoryIndex index.html
RewriteEngine On
RewriteRule ^/?$ prod/public/index.html [L]
然后public_html => prod => .htaccess
应该有:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ public/index.html [L]