Ситуация, когда браузер скачивает HTML-файл вместо его отображения, может быть вызвана несколькими причинами. Вот несколько направлений, в которых стоит искать решение:
1. **Заголовки ответа**: Проверьте заголовки ответа, которые отправляются вашим веб-сервером. Для HTML-страниц должен устанавливаться заголовок `Content-Type: text/html`. Если вместо этого устанавливается `Content-Disposition: attachment`, это может привести к тому, что браузер будет скачивать файл. Вы можете использовать инструменты разработчика в браузере (например, вкладка "Сеть" в Chrome или Firefox) для проверки заголовков.
2. **Конфигурация веб-сервера**: Убедитесь, что ваш веб-сервер настроен правильно. Для OpenBSD с httpd это может включать в себя проверку конфигурационных файлов. Убедитесь, что для вашего проекта не установлены настройки, которые приводят к неправильной интерпретации файлов (например, неправильные правила для обработки MIME-типов).
3. **Файлы `.htaccess` или другие настройки**: Если вы используете `.htaccess` или другие конфигурационные файлы, проверьте их на наличие правил, которые могут повлиять на обработку HTML-файлов. Например, если есть правило, которое принудительно устанавливает `Content-Disposition` для HTML-файлов, это может быть причиной проблемы.
4. **Содержимое файла**: Убедитесь, что файл действительно содержит корректный HTML-код. Если в файле есть ошибки или он не соответствует стандартному формату HTML, это может вызвать проблемы с его интерпретацией браузером.
5. **Права доступа**: Хотя вы упомянули, что права совпадают, всегда стоит еще раз проверить, что web-сервер действительно имеет доступ к файлу и он не заблокирован.
6. **Кэш браузера**: Иногда браузер может кэшировать старые версии файла или заголовков. Попробуйте очистить кэш браузера или открыть страницу в режиме инкогнито.
7. **Совместимость с PHP**: Если HTML-файл должен обрабатываться PHP, убедитесь, что он не сохраняется с расширением `.html` или с неправильной конфигурацией. Файл может быть обработан как обычный текстовый файл, если сервер не настроен на обработку PHP.
Если после проверки всех этих пунктов проблема всё еще сохраняется, попробуйте создать минимальный пример HTML-файла (например, с минимальным содержимым) и протестировать его загрузку. Это поможет понять, является ли проблема специфичной для определенного файла или проекта.