htaccess и 500 internal server error

Настраивал обновление прайсов по крону в одном из агрегаторов и возникла проблема 500 ошибки. Файл прайса сохранялся на сервере, но скачивать не получалось. Будь то из медиа библиотеки. Папка скачивания была одна — /wp-content/uploads/

Ни xls, ни csv, ни даже xml не скачивался. Показывалась 500 internal server error.

Оказалось, что в каталоге /wp-content/uploads/ лежал файл .htaccess с интересным содержимым.

Как я узнал, что проблема была в htaccess? Посмотрел логи сервера, где явно указывалась проблема с htaccess и регулярным выражением внутри файла:

[code]

[Thu Jul 20 23:36:15 2017] [alert] [client -.-.-.-:20510] /public_html/wp-content/uploads/.htaccess: RewriteRule: cannot compile regular expression ‘^(.*(-250×250|(-250×250|-768x([\\d]+)|-([1-6][\\d]{1,2}|[\\d]{1,2})x1024|-600x([1-1][\\d]{1,3}|[\\d]{1,2})|(-250×250|-([1-3][\\d]{1,2}|[\\d]{1,2})x300|-300x([1-3][\\d]{1,2}|[\\d]{1,2})|(-250×250)\\.jpg|.*(?<!-\\dx\\d)(?<!-\\d\\dx\\d)(?<!-\\dx\\d\\d)(?<!-\\d\\dx\\d\\d)(?<!-\\d\\d\\dx\\d\\d)(?<!-\\d\\dx\\d\\d\\d)(?<!-\\d\\d\\dx\\d\\d\\d)(?<!-\\d\\d\\d\\dx\\d\\d\\d)(?<!-\\d\\d\\d\\dx\\d\\d)(?<!-\\d\\d\\dx\\d\\d\\d\\d)(?<!-\\d\\d\\d\\dx\\d\\d\\d\\d)(?<!-\\d\\d\\d\\dx\\d\\d\\d)(?<!-\\d\\d\\d\\dx\\d\\d)(?<!-\\d\\d\\d\\d\\dx\\d\\d\\d\\d\\d)\\.jpg){1}((\\?|\\&)([^\\.\\?\\ ]+))*$’

[/code]

Именно это и было написано в mod_rewrite.c

Решил не разбираться с выражением и просто закомментил файл.

Теперь яндекс маркет получит наш прайс к себе в базу 🙂

Написать комментарий к тексту:

Your email address will not be published.

Site Footer