Я знаю, что этот вопрос задавался много раз, но даже с помощью этих ответов я не могу понять этого.
Я внештатный веб-разработчик и только начал поддерживать и администрировать существующий сайт форума vBulletin. На сайте уже есть сотни тысяч участников и миллионы сообщений, поэтому, чтобы избежать катастрофы, я подумал, что должен настроить среду разработки для работы, а не возиться с настоящим производственным сайтом.
Но, будучи полным новичком в nginx (сервере, используемом в производстве), я не могу понять, почему я постоянно получаю ошибку, указанную в заголовке.
Вот конфигурационный файл сайта:
server {
listen 80; ## listen for ipv4; this line is default and implied
root /home/bolt/domains/bolt.cd/public_html;
index forum.php index.html;
# Make site accessible from http://localhost/
server_name bolt.cd www.bolt.cd;
location / {
# try_files $uri $uri/ /index.php;
}
location /board/ {
rewrite ^/board/((urllist|sitemap_).*\.(xml|txt)(\.gz)?)$ /board/vbseo_sitemap/vbseo_getsitemap.php?sitemap=$1 last;
try_files $uri $uri/ /board/vbseo.php?$args;
access_log off;
}
location /board/vbseo/(packages|vb|includes|resources/html|resources/xml)/ {
allow 127.0.0.1;
deny all;
}
# location ~ /board/(.*\.php)$ {
# rewrite ^/board/(.*)$ /board/vbseo.php last;
# }
location /board/(neverfind-72891|modareaz-3782|install)/ {
auth_basic "Private";
auth_basic_user_file /home/bolt/.htpasswd;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index forum.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_connect_timeout 60;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffers 256 16k;
fastcgi_buffer_size 32k;
fastcgi_temp_file_write_size 256k;
}
location = /robots.txt { access_log off; log_not_found off; }
location = /favicon.ico { access_log off; log_not_found off; }
location ~ /\. { deny all; }
}
И каждый запрос к {root url} / доску возвращает страницу с ошибкой 500, в которую вошли следующие пользователи /var/log/nginx/error.log
:
2016/10/26 07:31:37 [error] 4760#0: *4 rewrite or internal redirection cycle while internally redirecting to "/index.html", client: 10.0.2.2, server: localhost, request: "GET /favicon.ico HTTP/1.1", host: "localhost:6544", referrer: "http://localhost:6544/board"
Я почти уверен, что правильно установил PHP-FPM, хотя это может быть проблемой или с этим, или с php.ini
config, но я почти уверен, что ошибка где-то в этом файле конфигурации nginx.
MTIA за помощь в решении этой неприятной проблемы! :-)