nginx 上部署 wordpress

本文详细介绍如何配置PHP和Nginx以实现高效稳定的服务。包括PHP安装参数设置、启动php-cgi的方法及Nginx的fastcgi配置,还提供了一个简单的Nginx配置示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

php 安装参数如:

  1. ./configure --prefix=/usr/local/php --enable-fastcgi --with-mysql=/usr/local/mysql --enable-zend-multibyte --with-config-file-path=/usr/local/php/conf --enable-discard-path --enable-force-cgi-redirect  

启动php-cgi:

  1. /usr/local/php/bin/php-cgi -b 127.0.0.1:9000 &  

nginx fastcgi 配置:/usr/local/nginx/conf/fastcgi_params

  1. fastcgi_param  QUERY_STRING       $query_string;  
  2. fastcgi_param  REQUEST_METHOD     $request_method;  
  3. fastcgi_param  CONTENT_TYPE       $content_type;  
  4. fastcgi_param  CONTENT_LENGTH     $content_length;  
  5.   
  6. fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;  
  7. fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;  
  8. fastcgi_param  REQUEST_URI        $request_uri;  
  9. fastcgi_param  DOCUMENT_URI       $document_uri;  
  10. fastcgi_param  DOCUMENT_ROOT      $document_root;  
  11. fastcgi_param  SERVER_PROTOCOL    $server_protocol;  
  12.   
  13. fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;  
  14. fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;  
  15.   
  16. fastcgi_param  REMOTE_ADDR        $remote_addr;  
  17. fastcgi_param  REMOTE_PORT        $remote_port;  
  18. fastcgi_param  SERVER_ADDR        $server_addr;  
  19. fastcgi_param  SERVER_PORT        $server_port;  
  20. fastcgi_param  SERVER_NAME        $server_name;  
  21.   
  22. # PHP only, required if PHP was built with --enable-force-cgi-redirect  
  23. fastcgi_param  REDIRECT_STATUS    200;  

基本上是官方自带的,我只加了 SCRIPT_FILENAME。

nginx 配置:

  1. server {  
  2.         listen 80;  
  3.         server_name www.example.com;  
  4.         access_log logs/example.access.log main;  
  5.   
  6.         server_name_in_redirect off;  
  7.   
  8.         root /home/www/wordpress;  
  9.         index index.php index.html index.htm;  
  10.   
  11.         location / {  
  12.                 try_files $uri $uri/ /index.php?q=$uri&$args;  
  13.         }  
  14.   
  15.         location ~ \.php$ {  
  16.                 include fastcgi_params;  
  17.                 fastcgi_pass 127.0.0.1:9000;  
  18.         }  
  19. }  

用 try_files 太简单了。都不用 rewrite 规则。

测试过可行的。

延伸:当然在生产环境像上面简单地用 php-cgi 是不行的。我用 spawn-fcgi 管理 php-cgi。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值