htaccess使用Angular app在子目录中跨域https

时间:2017-08-14 06:12:30

标签: angularjs apache .htaccess mod-rewrite

在涉及大多数服务器任务时,我有点超出了我的深度,所以请耐心等待我的描述和理解......

我正在尝试使用htaccess在一个子目录中使用Angular应用程序跨域强制使用https。

项目结构

/ public
  - .htaccess
  - index.html
  - styles.css
  - main.js
  - etc...
  / admin (angular app)
    - .htaccess
    - index.html
    - etc...

我试图在整个域中强制使用https,同时仍然能够深入链接到/ admin(角度)路由。

/public/.htaccess

RewriteEngine On
RewriteCond %{HTTP_HOST} ^site\.co\.uk$ [OR]
RewriteCond %{HTTP_HOST} ^www\.^site\.co\.uk$
RewriteRule ^(.*)$ https://www.site.co.uk/$1 [R,L]

/public/admin/.htaccess

RewriteEngine on
RewriteOptions inherit
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !index
RewriteRule (.*) index.html [L]

所有/ admin路由仍然可以通过普通的http访问,并且不会被重定向。我尝试了$ {SERVER_PORT}&的各种组合。 $ {HTTPS}但这些永远不会触发。它总是似乎返回端口80和https关闭并导致“太多重定向”。

0 个答案:

没有答案