- 解压nginx压缩包
tar xvzf nginx-0.8.43.tar.gz
cd nginx-0.8.43/
- 安装但只进行到make,在这里你通过 /usr/local/nginx/sbin/nginx -V获得你先前configure参数
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-http_stub_status_module --http-client-body-temp-path=/usr/local/nginx/temp/body --http-proxy-temp-path=/usr/local/nginx/temp/proxy --http-fastcgi-temp-path=/usr/local/nginx/temp/fastcgi
make
- 进入当前安装目录 objs/ 文件夹中,能够找到我们需要nginx文件,命令操作如下
cd objs/
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old
cp nginx /usr/local/nginx/sbin/
- 最后测试,并让nginx把nginx.pid改成nginx.pid.oldbin 跟着启动新的nginx
/usr/local/nginx/sbin/nginx -t
kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
注意:nginx安装路径和pid路径根据自己实际更改;
下面介绍2种方法实现对wordpress的 URLs 的可读性和对搜索引擎的友好
- 使用重写方式
location / {
index index.php;
if (!-e $request_filename){
rewrite ^ /index.php?q=$uri&$args;
}
}
-
基于try_files的url重置
location / {
index index.php;
try_files $uri $uri/ /index.php?q=$uri&$args;
}
最近更新服务器的nginx的版本,但在make后出现如下警告:
objs/src/os/unix/ngx_process.o: In function `ngx_process_get_status’:
ngx_process.c:(.text+0xc41): warning: `sys_errlist’ is deprecated; use `strerror’ or `strerror_r’ instead
ngx_process.c:(.text+0xc32): warning: `sys_nerr’ is deprecated; use `strerror’ or `strerror_r’ instead
在其官方网站回复是,这属正常现象,没有替换废弃的函数是因为新的为非异步信号安全的函数
A message “ ‘sys_errlist’ is deprecated; use ‘strerror’ or ‘strerror_r’ instead ”
Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor 将源代码以类BSD许可证的形式发布。尽管还是测试版,但是,Nginx 已经因为它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名了。
Nginx 可以在大多数 Unix like OS 上编译运行,并有 Windows 移植版。目前 Nginx 的开发版为 0.8.x,稳定版为 0.7.x,历史稳定版为 0.6.x,建议使用 0.7 系列作为生产版本。 Nginx 的源代码使用 2-clause BSD-like license
我个人本身使用在vps服务器 nginx+php-fcgi(php-fpm)搭建web服务器。
Development versions [changes]
nginx-0.8.42 pgp
nginx/Windows-0.8.42 pgp
Stable versions
nginx-0.7.67 pgp
nginx/Windows-0.7.67 pgp
alias命令与apache别名作用类似,使用一个路径替换指定位置,其中与root有所不同,其网站根目录不变,改变是文件的系统路径。最近版本中已经支持正则匹配location中使用,alias替换路径也可以变量。以下是我nginx中phpmyadmin配置为例。
location /phpmyadmin{
alias /var/www/phpMyAdmin;
}
location ~ ^/phpmyadmin/(.+\.php)$ {
alias /var/www/phpMyAdmin/$1;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}