Почему после настройки кеша в .htaccess перестали работать ajax запросы на php файлы? Добрый день!
Коллега решил попробовать настроить кеширование и вставил код в .htaccess который выведен в конца вопроса. После этого все аякс запросы которые идут на файлы .php возвращают 500 ошибку. Такое чувство, что закешировались пустые файлы .php к которым идет запрос. Помогает только пересохранить файл, тогда ошибка пропадает, но лишь на время. Код с .htaccess удалил, но ошибки всеравно периодически возникают. Кто сталкивался с подобным? Есть ли способ как-то это исправить?
Заранее благодарен.
# Add correct content-type for fonts
AddType application/vnd.ms-fontobject .eot
AddType application/x-font-ttf .ttf
AddType application/x-font-opentype .otf
AddType application/x-font-woff .woff
AddType image/svg+xml .svg
# Compress compressible fonts
AddOutputFilterByType DEFLATE application/x-font-ttf application/x-font-opentype image/svg+xml
ExpiresActive On
ExpiresDefault "access plus 5 seconds"
# special MIME type for icons - see http://www.iana.org/assignments/media-types/image/vnd.microsoft.icon
AddType image/vnd.microsoft.icon .ico
# now we have icon MIME type, we can use it
# my favicon doesn't change much
ExpiresByType image/vnd.microsoft.icon "access plus 3 months"
# Cache Images
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
ExpiresByType image/svg+xml "access plus 2592000 seconds"
# Cache Fonts
ExpiresByType application/vnd.ms-fontobject "access plus 2592000 seconds"
ExpiresByType application/x-font-ttf "access plus 2592000 seconds"
ExpiresByType application/x-font-opentype "access plus 2592000 seconds"
ExpiresByType application/x-font-woff "access plus 2592000 seconds"
ExpiresByType image/svg+xml "access plus 2592000 seconds"
# Cache other content types (Flash, CSS, JS, HTML, XML)
ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 2592000 seconds"
ExpiresByType application/javascript "access plus 2592000 seconds"
ExpiresByType application/x-javascript "access plus 2592000 seconds"
ExpiresByType text/html "access plus 600 seconds"
ExpiresByType application/xhtml+xml "access plus 600 seconds"

21 Авг 2019 в 06:24
230 +1
0
Ответы
1

Кажется, проблема может быть связана с настройкой кэша в .htaccess, которая влияет на поведение AJAX запросов к PHP файлам.

Этот код в .htaccess добавляет кэширование ресурсов на сервере и устанавливает время хранения для различных типов файлов. Возможно, AJAX запросы к PHP файлам не работают из-за того, что эти файлы кэшируются на сервере и не обновляются при каждом запросе.

Если вам необходимо использовать AJAX запросы к PHP файлам, то вам нужно исключить эти файлы из кэширования. Для этого можно добавить директиву Header set Cache-Control "no-cache" перед блоком с кэшированием в .htaccess для соответствующих PHP файлов.

Пример:

<FilesMatch "\.php$">
Header set Cache-Control "no-cache"
</FilesMatch>

Попробуйте добавить такую директиву и проверьте, поможет ли это исправить проблему с AJAX запросами к PHP файлам. Если проблема сохраняется, возможно есть другие настройки .htaccess или сервера, которые также влияют на работу AJAX запросов.

20 Апр в 13:19
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 493 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир