Согласно этой строке из журнала доступа Apache, Opera иногда включает фрагмент хеша в URI, отправляемый на сервер:
[26 / Apr / 2011: 01: 09: 03 +0200] "GET / dagbok / # type = food HTTP / 1.1" 500 - "-" "Opera / 9.80 (Windows NT 6.1; U; nb) Presto / 2.8.131 Версия / 11.10"
Любой опыт или понимание того, почему он это делает?
URI должен быть перехвачен событием изменения хеша jQuery, которое, в свою очередь, вызывает .load () на URI /dagbok/food/
.
PS!500 Internal Server
происходит, потому что маршрутизация не понимает URI с хэш-фрагментом в нем.И не должен.
Обновление с помощью RewriteRules:
RewriteEngine на
RewriteCond% {REQUEST_FILENAME}! -D
RewriteCond% {REQUEST_FILENAME}! -f
RewriteRule!. (js | ico | txt | gif | jpg | png | css) $ index.php
Index.php затем запускает фронтальный контроллер / маршрутизатор Zends, который не можетнайти любой маршрут для этого URI.Что верно, поскольку этот URI никогда не должен достигать сервера.