Linux(九)LNMP环境Nginx服务器

一、下载并安装LNMP一键安装包:

  #tar -zxvf lnmp1.2-full.tar.gz

  #cd lnmp1.2-full

  #./install.sh lnmp

  安装LNMP执行:wget -c http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz && tar zxf lnmp1.2-full.tar.gz && cd lnmp1.2-full &&./install.sh lnmp
  如需要安装LNMPA或LAMP,将./install.sh 后面的参数替换为lnmpa或lamp即可。

二.LNMP相关软件安装目录
  Nginx 目录: /usr/local/nginx/
  MySQL 目录 : /usr/local/mysql/
  MySQL数据库所在目录:/usr/local/mysql/var/
  PHP目录 : /usr/local/php/
  PHPMyAdmin目录 : /home/wwwroot/default/phpmyadmin/

  默认网站目录 : /home/wwwroot/default/
  Nginx日志目录:/home/wwwlogs/

三.LNMP相关配置文件位置
  Nginx主配置文件:/usr/local/nginx/conf/nginx.conf
  MySQL配置文件:/etc/my.cnf
  PHP配置文件:/usr/local/php/etc/php.ini
  php-fpm配置文件:/usr/local/php/etc/php-fpm.conf

四.LNMP状态管理命令

  LNMP 状态管理: lnmp {start|stop|reload|restart|kill|status}
  LNMP 各个程序状态管理: lnmp {nginx|mysql|mariadb|php-fpm|pureftpd} {start|stop|reload|restart|kill|status}

五.配置文件

  #vi /usr/local/nginx/conf/nginx.conf

user  www www;

worker_processes auto;

#启动进程

error_log  /home/wwwlogs/nginx_error.log  crit;

#错误日志

pid        /usr/local/nginx/logs/nginx.pid;

#主进程PID保存文件

#Specifies the value for maximum file descriptors that can be opened by this process. 
worker_rlimit_nofile 51200;

#文件描述符数量

events 
{
   use epoll;

#网络I/O模型,建议linux使用epoll,FreeBSD使用kqueue

#epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于linux2.6以上内核,可以大大提高nginx的性能
   worker_connections 51200;

#单个工作进程最大允许连接数

multi_accept on;

    
}

http

#整体环境配置
{
   include       mime.types;
   default_type  application/octet-stream;
#设定mime类型,文件传送类型由mime.type文件定义

server_names_hash_bucket_size 128; #保存服务器名字的hash表大小

client_header_buffer_size 32k; #客户端请求头部缓冲区大小

large_client_header_buffers 4 32k; #最大客户端头缓冲大小

client_max_body_size 50m; #客户端最大上传文件大小(M)

sendfile on;

#sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,对于普通应用,必须设为 on如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的uptime.

#高效文件传输

tcp_nopush     on;

#这个是默认的,结果就是数据包不会马上传送出去,等到数据包最大时,一次性的传输出去,这样有助于解决网络堵塞。(只在sendfile on时有效)

keepalive_timeout 60;

#连接超时时间

tcp_nodelay on;

#禁用nagle算法,也即不缓存数据。有效解决网络阻塞

fastcgi_connect_timeout 300;

fastcgi_send_timeout 300;

fastcgi_read_timeout 300;

fastcgi_buffer_size 64k;

fastcgi_buffers 4 64k;

fastcgi_busy_buffers_size 128k;

fastcgi_temp_file_write_size 256k;

#fastcgi设置

gzip on;

gzip_min_length  1k;

gzip_buffers     4 16k;

gzip_http_version 1.1;

gzip_comp_level 2;

gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;

gzip_vary on;

gzip_proxied   expired no-cache no-store private auth;

gzip_disable   "MSIE [1-6]\.";

#limit_conn_zone $binary_remote_addr zone=perip:10m;

##If enable limit_conn_zone,add "limit_conn perip 10;" to server section.

server_tokens off;

#隐藏nginx版本号(curl -I 192.168.4.154可以查看,更加安全)

 

#log format

log_format  access  ‘$remote_addr - $remote_user [$time_local] "$request" ‘

‘$status $body_bytes_sent "$http_referer" ‘

‘"$http_user_agent" $http_x_forwarded_for‘;

#定义日志格式

server

{

listen 80 default_server;

#listen [::]:80 default_server ipv6only=on;

#监听80端口

server_name www.lnmp.org;

#服务器名

index index.html index.htm index.php;

#默认网页文件

root  /home/wwwroot/default;

#网页主目录

#error_page   404   /404.html;

include enable-php.conf;

location /nginx_status

{

stub_status on;

access_log   off;

}

#开启status状态监测

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

{

expires      30d;

}

#静态文件处理,保存期30天

location ~ .*\.(js|css)?$

{

expires      12h;

}

#js和css文件处理,保存期12小时

location ~ /\.

{

deny all;

}

access_log  /home/wwwlogs/access.log  access;

#正确访问日志

}

include vhost/*.conf;

#vhost/下子配置文件生效

}

检查nginx配置文件语句错误

  #/usr/local/nginx/sbin/nginx -t

平滑重启nginx进程

  1)pkill -HUP nginx  (常用)

  2)kill -HUP `pgrep -uroot nginx`

  Pgrep  -uroot  nginx  取出nginx主进程PID

  3)/usr/local/nginx/sbin/nginx -s reload

时间: 2024-10-31 17:24:58

Linux(九)LNMP环境Nginx服务器的相关文章

[Linux] PHP程序员玩转Linux系列-lnmp环境的搭建

1.PHP程序员玩转Linux系列-怎么安装使用CentOS 在平常的工作中,我作为PHP程序员经常要搭建一下环境,这个环境就是Linux系统下安装nginx,php,mysql这三个软件,对软件进行配置,然后在浏览器上能够正常打开运行查看项目.CentOS中安装软件有好几种方式,我经常用的是包安装方式,因为这种非常简单一句命令就能安装成功,这也是与windows下安装软件最大的不同点.包安装方式就一个关键单词就是yum. 解决找不到nginx包的问题 我先安装一下web服务器nginx,按好这

修改Linux内核参数提高Nginx服务器并发性能

当linux下Nginx达到并发数很高,TCP TIME_WAIT套接字数量经常达到两.三万,这样服务器很容易被拖死.事实上,我们可以简单的通过修改Linux内核参数,可以减少Nginx服务器 的TIME_WAIT套接字数量,进而提高Nginx服务器并发性能.   vi /etc/sysctl.conf   增加以下几行: net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 1200 net.ipv4.tcp_syncookie

linux:lnmp环境搭建

一.准备工作(把安装环境需要使用到的包都下载好) mysql(官网):http://dev.mysql.com/downloads/ php(官网):http://php.net/downloads.php nginx(官网):http://nginx.org/:选择稳定版本(Nginx有很多种版本,比如mainline(主线版),stable(稳定版)) 还要其他的一些依赖包需要童鞋们去一个一个寻找并下载,下面是写一些依赖包的解释: libxml:是一个用来解析XML文档的函数库(用C语言写的

linux下LNMP环境的搭建

lamp=linux+apache+mysql+php; lnmp=Linux+nginx+mysql+php 他们的区别在于apache和nginx和php结合的模式不同,我们讲的这两个架构中,php在编译的时候以一个模块的形式和apache成为了一个整体,这种情况下我们是可以把php的安装目录/usr/local/php删除的.而lnmp中的php启动了一个服务php-fpm,这种模式相当于nginx处理php脚本时,直接把请求转发给了php-fpm,说白了就是一个代理.这个php的安装目录

修改Linux内核参数提高Nginx服务器在高的时候的性能

并发 Linux下高并发的Nginx服务器,当TCP TIME_WAIT套接字数量经常达到两.三万,服务器很容易被拖死.通过修改Linux内核参数,可以减少Nginx服务器的TIME_WAIT套接字数量. vi /etc/sysctl.conf 增加以下几行: 引用 net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 1200 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_tw_reuse =

linux下LNMP环境搭建

LNMP是linux.nginx.mysql.php的简写:LNMP与LAMP环境一样也是用来做web网站后台的,nginx是轻量级的,进程间的通讯使用php-fpm独立使用:apache则是比较臃肿的,调用php的模块来完成的,需要加载很多模块,运行起来相对较慢. 一.安装MySQL 我们平时安装MySQL都是源码包安装的,但是由于它的编译需要很长的时间,我们这里选择安装二进制免编译包.你可以到MySQL官方网站去下载 http://dev.mysql.com/downloads/ 具体版本根

linux下LNMP环境安装笔记

1 安装 Nginx 安装  sudo apt-get install nginx 启动  service nginx start 浏览器测试是否安装成功  http://192.168.2.173/ 2 安装 PHP5 sudo apt-get install php5-fpm 3 安装 MySQL 5 数据库 sudo apt-get install mysql-server mysql-client 4 让 PHP5 支持 MySQL sudo apt-get install php5-m

LINUX 搭建lamp环境(nginx)

apt-get install php5 php5-mysql php5-json php5-gd php5-pgsql php5-mcrypt php5-redis php5-memcached php5-fpm -y apt-get install nginx apt-get install -y mysql-client mysql-server

centos 6.8 安装LNMP环境(linux+nginx+mysql+php)

Nginx 特性 Nginx 性能稳定.功能丰富.运维简单.处理静态文件速度快且消耗系统资源极少.1.相比 Apache,用 Nginx 作为 Web 服务器:使用资源更少,支持更多并发连接,效率更高.2.作为负载均衡服务器:Nginx 既可在内部直接支持 Rails 和 PHP,也可支持作为 HTTP 代理服务器对外进行服务.Nginx 用 C 编写而成, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好的多.3.作为邮件代理服务器:Nginx 同时也是一款非常优秀的邮件代理