Если файлы являются текстовыми файлами и smaller
, в bigger
запускается в начале строки, не слишком трудно реализовать с awk
:
awk -v i=0 'NR==FNR{l[n++]=$0;next}
{if ($0 == l[i]) {if (++i == n) {print FNR-n+1;exit}} else i=0}
' smaller bigger
Большинство ошибок возникает из-за неправильной конфигурации при установке Nigix. Предлагаю проверить файл ( /etc/php-fpm.d/www.conf
).
vi /etc/php-fpm.d/www.conf
Найдите строку, определяющую параметр прослушивания, и измените ее так, чтобы она выглядела следующим образом:
listen = /var/run/php-fpm/php-fpm.sock
Затем найдите строки, которые устанавливают listen.owner
и listen.group
и раскомментируйте их. Они должны выглядеть так:
listen.owner = nobody
listen.group = nobody
Наконец, найдите строки, которые задают пользователя и группу, и измените их значения с «apache» на «nginx»:
user = nginx
group = nginx
Затем сохраните и выйдите
/etc/init.d php-fpm restart
Когда PHP display_errors отключен, ошибки PHP могут возвращать ошибку Nginx 500.
Вам следует посмотреть логи php-fpm, я уверен, вы найдете там ошибку. В CentOS 7:
tail -f /var/log/php-fpm/www-error.log
Вы также можете отображать ошибки PHP. В /etc/php.ini измените:
display_errors = Off
на:
display_errors = On
Не лучший ответ в мире, но 500-я ошибка - это двусмысленность, это может быть ваша nginx-конфигурация или может быть связана с контентом вашего сайта. Минимизируйте конфигурацию и перестраивайте до тех пор, пока не сможете воспроизвести проблему.
Замените содержимое сайта простым index.html на простой текст. Оставьте все дополнительные директивы по ошибкам и блок расположения. Как только вы установили базовую функциональность, вы можете чувствовать себя менее безумно и добавлять другие директивы, тестируя по ходу, пока вы не изолируете любую директиву, вызывающую проблемы, и не сможете найти оттуда первопричину.