刷新浏览器时,rewriterule无法正常工作

时间:2019-02-07 06:57:49

标签: apache2.4

我在浏览器中输入此网址 a.domain.com 和我一样,除了它直接重定向到a.domain / fr

它可以在我的虚拟主机中正常使用

<VirtualHost *:443>
    ProtocolsHonorOrder on
    Protocols h2 h2c
    UseCanonicalName off

    VirtualDocumentRoot ${SRVROOT}/sites/%1

    RewriteCond %{HTTP:Accept-Language} ^fr(.*) [NC]
    RewriteRule  ^\/$ /fr [R]

    RewriteCond %{HTTP:Accept-Language} !^fr(.*) [NC]
    RewriteRule  ^\/$ /de  [R] 
...

问题是当我导航时,按F5键时,此时我的应用程序URL可以变成a.domain.fr/home

403 Forbidden C:/Apache24/sites/demo/fr/home/index.html

我拥有的虚拟主机内

 <Directory "${SRVROOT}/sites/*">
  RewriteEngine on
    RewriteBase /
    RewriteRule ^../index\.html$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule (..) $1/index.html [NC,L]

除了最后两个字符(语言角色),我总是指向/fr/index.html或/de/index.html,即使url被Angular路由更改为/ fr / home

在我的磁盘中,只有C:/Apache24/sites/demo/fr/index.html

希望我会被理解...

0 个答案:

没有答案