Maison > Questions et réponses > le corps du texte
Je suis un débutant. J'ai récemment acquis un serveur et je voulais créer un blog simple pour m'amuser. J'ai donc choisi WordPress, le plus simple, et je l'ai installé étape par étape selon les tutoriels sur WordPress. En parallèle, j'ai installé mysql pour allouer la base de données WordPress, puis j'ai installé php* en utilisant yum selon les informations (j'ai installé. tous les packages php, y compris php-fpm ), le serveur que j'ai choisi est Nginx, qui est également installé avec yum.
Mais lorsque je continue d'installer wordpress via install.php, une erreur 404 apparaît Après avoir supprimé certains commentaires de la configuration par défaut de nginx, une erreur 500 apparaît.
Je pense qu'il s'agit d'un problème avec les paramètres nginx, mais le fichier de configuration dans CentOS est différent de celui sur Internet, et la configuration de diverses informations sur Internet est également différente. J'aimerais qu'une personne expérimentée clarifie mes doutes. Je serais très reconnaissant envers un débutant.
Le contenu de /etc/nginx/nginx.conf est le suivant :
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
/etc/nginx/conf.d/default.conf est défini comme suit :
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
location ~ \.php$ {
proxy_pass http://127.0.0.1;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}
}
/etc/nginx/fastcgi_params est défini comme suit :
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_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
巴扎黑2017-05-16 17:30:53
Publiez le code directement :
/etc/php-fpm.d/www.conf
, mettre en place la surveillance : /etc/php-fpm.d/www.conf
配置文件,设置了监听:...
; (IPv6 and IPv4-mapped) on a specific port;
; '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
; listen = 127.0.0.1:9000
listen = /var/run/php-fpm.sock
; Set listen(2) backlog.
; Default Value: 65535
;listen.backlog = 65535
...
/etc/nginx/nginx.conf
配置了 php
的 upstream
: ...
reset_timedout_connection on;
server_names_hash_bucket_size 2048;
upstream php {
server unix:/var/run/php-fpm.sock;
}
include /etc/nginx/conf.d/*.conf;
...
文件位置为:/etc/nginx/inc.d/wordpress-multisite.inc
charset utf-8;
root $app_root/public;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
access_log off; log_not_found off; expires max;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass php;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
log_not_found off;
access_log off;
}
location ~ /\. {
deny all;
}
location ~* /(?:uploads|files)/.*\.php$ {
deny all;
}
/etc/nginx/nginx.conf
configure l'en amont
de php
: server {
listen 80;
server_name server.name;
set $app_root '/home/www/server.name';
include /etc/nginx/inc.d/wordpress-multisite.inc;
}
/etc/nginx/inc.d/wordpress-multisite.inc
🎜
rrreee
🎜Fichier de configuration d'un certain site WordPress : 🎜
rrreee过去多啦不再A梦2017-05-16 17:30:53
root xxx;
location / {
index index.php;
}
location ~ \.php5?($|/) {
set $script $uri;
set $path_info "";
if ($uri ~ "^(.+\.php)(/.+)") {
set $script ;
set $path_info ;
}
unix:/var/run/php-fpm/php-fpm.sock
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$script;
fastcgi_param SCRIPT_NAME $script;
fastcgi_param PATH_INFO $path_info;
}
ringa_lee2017-05-16 17:30:53
Modifiez la configuration par défaut de nginx pour :
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock
再去修改 php-fpm 的 /etc/php5/fpm/pool.d/www.conf 配置:
listen = /var/run/php5-fpm.sock
écouter = /var/run/php5-fpm.sock
🎜
🎜Puis rechargez nginx...🎜