使用下面的.htaccess文件,很明显,我在加载脚本和css时得到了很多404,因为浏览器总是在错误的目录中查找。
我是htaccess的新手,不知道如何修复它。
<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine on
    RewriteRule ^$ client/app/index\.html [L]
</IfModule>Dir结构如下:
项目/client / app / index.html
.htaccess位于项目目录下。
发布于 2015-08-18 18:47:50
我建议您使用301将用户重定向到正确的路径。这将以你的问题结束。
RewriteRule ^$ client/app/index\.html [L, 301]如果你担心seo,可以看看https://support.google.com/webmasters/answer/93633?hl=en。
发布于 2015-08-18 19:36:17
您服务器上的所有呼叫都将被重定向至您的RewriteRule。添加RewriteCond (RewriteCondition)以忽略CSS和JS文件(如果存在):
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\.(?:css|js|jpe?g|gif|png)$ [NC]
RewriteRule ^$ client/app/index\.html [L]解释:
RewriteCond %{REQUEST_FILENAME} !-f
如果请求的文件名存在(css/main.css),请不要使用RewriteRules。
RewriteCond %{REQUEST_URI} !\.(?:css|js|jpe?g|gif|png)$ [NC]
如果文件不存在,但与其中一个扩展名匹配,则不执行任何操作。这很有帮助,因为如果css/main-2.css不存在,您会得到404,而不是将您重定向到index.php。
最后是您自己的规则,它重定向所有非条件规则。
发布于 2015-11-02 12:07:27
在您的.htaccess文件中,这就是对我有效的方法。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !=/index.html
RewriteCond %{REQUEST_URI} !\.(?:css|js|jpe?g|gif|png)$ [NC]
RewriteRule ^ /index.html [R=301]谢谢!
https://stackoverflow.com/questions/32070031
复制相似问题