2014-12-08 3 views
0

Согласно документации GSA по:GSA - Последние изменения даты для документов (PDF/DOC и т.д.)

PDF or XPS documents typically have metadata such as: 
<MT N="CreationDate" V="D:20040107111105Z"/> 
<MT N="ModDate" V="D:20040209162220+01'00'"/> 
The search appliance can automatically pick up these formats without any special formatting configuration. 

Но, к сожалению, это, кажется, не работает. У нас есть файлы PDF, DOC и другие файлы на нашем сайте, и последние измененные даты отображаются в соответствующих записях <MT> в результатах поиска GSA. Но <FS NAME="date"> имеет пустое значение, что указывает на то, что GSA не может извлечь дату. Даже указание формата даты на странице «Даты документа» в консоли GSA не помогает.

Итак, как заставить GSA «видеть» последние измененные даты документов? Обратите внимание: мы не можем использовать значения последнего HTTP-заголовка веб-сервера, поскольку они неверны в нашем случае (помеха AEM-диспетчера/кэширования).

ответ

0

GSA может извлекать метаданные из свойств документа, но я не уверен, может ли GSA использовать этот ModDate/CreationDate для заполнения <FS NAME="date"> без конфигурации «Даты документа».

Вы упомянули, что «вы не можете использовать значения HTTP-заголовков, модифицированные последним измененным веб-сервером, поскольку они неверны в нашем случае». Означает ли это, что ваш веб-сервер возвращает последний измененный заголовок с неправильными значениями?

Заголовок последней модификации ответа имеет приоритет над всеми другими метаданными в GSA. Поэтому, если ваш сервер не может вернуть правильные значения, вам нужно удалить заголовок Last-Modified из ответа.

Я сталкивался с многими людьми, использующими java Simpledateformat (yy-MM-dd) при указании формата в Датах документа, но GSA может понимать только формат strptime. Это одна из главных причин, почему GSA не заполняет <FS NAME="date">. Поэтому обязательно используйте формат даты в strptime, иначе оставьте поле пустым, поскольку оно не является обязательным.

+0

Спасибо Мохан. Да, веб-сервер возвращает неверную дату, потому что дата, которую он видит, является кешированной версией, а не фактическим документом. И да, мы сделали Header unset в apache httpd conf для этих документов, чтобы подавить последнее изменение. Мы попробовали настройку Даты документа (как и мой оригинальный пост), но GSA все еще не распознает дату. Вероятно, это связано с тем, что ModDate имеет секунды, часовой пояс и т. Д., А GSA допускает отображение только до часа (HH). И в любом случае эта конфигурация не является жизнеспособным решением, так как есть другие форматы файлов (DOC и т. Д.), С которыми можно бороться. – Vasan