У меня есть сайт angularJS на сервере lighttpd, но режим html5 не работает (ошибка 404), когда я обновляю или делаю прямую ссылку. У меня есть локальный сервер, на котором работает Apache, и нет проблемы с выражением перезаписи в .htaccess. Это код Apache:lighttpd и AngularJS html5 mode
<IfModule mod_rewrite.c>
Options +FollowSymlinks
#Options +SymLinksIfOwnerMatch
RewriteEngine On
RewriteRule !\.\w+$ index.html [L]
</IfModule>
и это содержание lighttpd.conf
server.modules = (
"mod_access",
"mod_alias",
"mod_compress",
"mod_redirect",
"mod_rewrite",
)
server.document-root = "/var/www/html"
server.upload-dirs = ("/var/cache/lighttpd/uploads")
server.errorlog = "/var/log/lighttpd/error.log"
server.pid-file = "/var/run/lighttpd.pid"
server.username = "www-data"
server.groupname = "www-data"
server.port = 80
index-file.names = ("index.php", "index.html", "index.lighttpd.html$
url.access-deny = ("~", ".inc")
static-file.exclude-extensions = (".php", ".pl", ".fcgi")
compress.cache-dir = "/var/cache/lighttpd/compress/"
compress.filetype = ("application/javascript", "text/css", "text/htm$
# default listening port for IPv6 falls back to the IPv4 port
include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
include_shell "/usr/share/lighttpd/create-mime.assign.pl"
include_shell "/usr/share/lighttpd/include-conf-enabled.pl"
$HTTP["host"] == "myweb.io" {
server.document-root = "/var/www/html/"
url.rewrite-once = ("!\.\w+$" => "/index.html")
}
Я обыскал все в интернете и я ничего об этом не нашел. Я не знаю, правильно ли я написал регулярное выражение, или я поставил его в неправильное место.