《LNMP安装与配置nginx》由会员分享,可在线阅读,更多相关《LNMP安装与配置nginx(10页珍藏版)》请在金锄头文库上搜索。
1、LNMP安装与配置Nginx与apache、lighttp性能综合对比,如下图:一.系统需求: CentOS/RHEL/Fedora/Debian/Ubuntu系统 需要3GB以上硬盘剩余空间 MySQL 5.6及MariaDB 10必须1G以上内存。 Linux下区分大小写,输入命令时请注意! 确定yum源正常使用!二.安装步骤:1、下载并安装LNMP一键安装包:#tar -zxvf lnmp1.2-full.tar.gz#cd lnmp1.2-full#./install.sh lnmp 安装LNMP执行:wget -c http:/ & tar zxf lnmp1.2-full.tar.
2、gz & cd lnmp1.2-full & ./install.sh lnmp如需要安装LNMPA或LAMP,将./install.sh 后面的参数替换为lnmpa或lamp即可。按上述命令执行后,会出现如下提示:需要设置MySQL的root密码(不输入直接回车将会设置为root),输入后回车进入下一步,如下图所示:这里需要确认是否启用MySQL InnoDB,如果不确定是否启用可以输入 y ,输入 y 表示启用,输入 n 表示不启用。默认为y 启用,输入后回车进入下一步,选择MySQL版本:输入MySQL或MariaDB版本的序号,回车进入下一步,选择PHP版本:输入PHP版本的序号,回车
3、进入下一步,选择是否安装内存优化:可以选择不安装、Jemalloc或TCmalloc,输入对应序号回车。如果是LNMPA或LAMP的话还需要设置管理员邮箱再选择Apache版本提示Press any key to install.or Press Ctrl+c to cancel后,按回车键确认开始安装。LNMP脚本就会自动安装编译Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer这几个软件。3、安装完成如果显示Nginx: OK,MySQL: OK,PHP: OK并且Nginx、MySQL、PHP都是running,80和3306端口都存在,并Install
4、lnmp V1.2 completed! enjoy it.的话,说明已经安装成功。4、安装失败如果出现类似上图的提示,则表明安装失败,说明没有安装成功!二.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/w
5、wwlogs/三.LNMP相关配置文件位置Nginx主配置文件:/usr/local/nginx/conf/nginx.confMySQL配置文件:/etc/fPHP配置文件:/usr/local/php/etc/php.iniphp-fpm配置文件:/usr/local/php/etc/php-fpm.conf四.LNMP状态管理命令LNMP 状态管理: lnmp start|stop|reload|restart|kill|statusLNMP 各个程序状态管理: lnmp nginx|mysql|mariadb|php-fpm|pureftpd start|stop|reload|res
6、tart|kill|status五.配置文件#vi /usr/local/nginx/conf/nginx.confuser 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
7、 51200;#文件描述符数量eventsuse 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_typeapplication/octet-stream;#设定mime类型,文件传送类型由mime.type文件定义 server
8、_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
9、处理速度,降低系统的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_bu
10、ffers 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 applicat
11、ion/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 forma
12、t 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|c