我正在运行一个单页应用程序,需要在 .htaccess 上添加以下几行。但是,其 /images/ 文件夹中的图像现在加载速度极慢。
下面几行有什么问题吗?
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.html [QSA,L]
答案1
这不会对图片的加载产生很大影响。但是,可以进行优化以排除/images
目录的处理。
例如:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !^images/ index.html [L]
QSA
不需要该标志。
或者,排除所有看起来已经有文件扩展名的请求,这自然应该包括您的所有图片、JS、CSS 和任何其他静态资源。但是,这意味着您的页面 URL 不能包含看起来像文件扩展名的内容。
例如:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.\w{2,4}$ index.html [L]