JBe*_*a93 6 apache .htaccess mod-rewrite url-rewriting angularjs
我已经为使用 html5 路由的 AngularJs 应用程序编写了此重写规则。
重写网址是这样的:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^.*\.(jpg|css|js|gif|png|html|woff)$
RewriteRule ^ index.html [L]
Run Code Online (Sandbox Code Playgroud)
我希望所有包含路径/old/和路径/images/的 URL都不会被重写!
有人可以帮助我,我尝试添加这样的重写条件:
RewriteCond %{REQUEST_URI} !^/old/
Run Code Online (Sandbox Code Playgroud)
但它不起作用!
问候, 洛伦佐
更新
如果您使用带有路由的 AngularJS,请<a>在具有同一域中的链接但不在 Angular 路由下的元素上使用 target="_self" !
您的第三个RewriteCond没用,因为您已经在第一个条件下检查现有文件。
另外,如果你在一个子目录中(比如/old/或者其他东西,你应该RewriteBase在你的index.html.
你可以用这个替换你的代码
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/(old|images)/ [NC]
RewriteRule . /index.html [L]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12388 次 |
| 最近记录: |