LNMP的配置与优化
一、LNMP的下载
LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat/Fedora、Debian/Ubuntu/Raspbian/Deepin VPS或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、LAMP(Apache/MySQL/PHP)生产环境的Shell程序。同时提供一些实用的辅助工具如:虚拟主机管理、FTP用户管理、Nginx、MySQL/MariaDB、PHP的升级、常用缓存组件Redis、Xcache等的安装、重置MySQL root密码、502自动重启、日志切割、SSH防护DenyHosts/Fail2Ban、备份等许多实用脚本。
官方网站为 https://www.lnmp.org/
最新稳定版本: LNMP 1.3
完整版:http://soft.vpser.net/lnmp/lnmp1.3-full.tar.gz (478MB)
二、常用配置
1. 启用PATH_INFO支持
该功能用于ThinkPHP开发
网站配置目录 ./usr/local/nginx/conf/vhost/www.fangbei.org.conf
打开并添加如下红包部分

server
{
listen 80;
#listen [::]:80;
server_name www.fangbei.org;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/www.fangbei.org; include other.conf;
#error_page 404 /404.html;
include enable-php.conf; location / {
if (!-e $request_filename){
rewrite ^/(.*)$ /index.php?s=/$1 last;
}
} location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
} location ~ .*\.(js|css)?$
{
expires 12h;
} location ~ /\.
{
deny all;
} access_log off;
}

2. 禁用mysql日志
在MySQL数据库中,mysql-bin.000001、mysql- bin.000002等文件是数据库的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志文件中,还包括每个语句执行的时间,也会记录进去的。
比如如下

[root@www.fangbei.org /]# cd /usr/local/mysql/var/
[root@www.fangbei.org var]# ll
total 29964
drwx------ 2 mysql mysql 4096 Feb 21 17:42 100893722
-rw-r----- 1 mysql root 8477 Feb 21 18:41 www.fangbei.org.err
-rw-rw---- 1 mysql mysql 5 Feb 21 18:41 www.fangbei.org.pid
-rw-rw---- 1 mysql mysql 18874368 Feb 21 18:41 ibdata1
-rw-rw---- 1 mysql mysql 5242880 Feb 21 18:41 ib_logfile0
-rw-rw---- 1 mysql mysql 5242880 Feb 21 17:08 ib_logfile1
drwx------ 2 mysql mysql 4096 Feb 21 17:08 mysql
-rw-rw---- 1 mysql mysql 27735 Feb 21 17:08 mysql-bin.000001
-rw-rw---- 1 mysql mysql 1113246 Feb 21 17:08 mysql-bin.000002
-rw-rw---- 1 mysql mysql 264 Feb 21 17:08 mysql-bin.000003
-rw-rw---- 1 mysql mysql 1119 Feb 21 17:08 mysql-bin.000004
-rw-rw---- 1 mysql mysql 126 Feb 21 17:08 mysql-bin.000005
-rw-rw---- 1 mysql mysql 127076 Feb 21 18:41 mysql-bin.000006
-rw-rw---- 1 mysql mysql 107 Feb 21 18:41 mysql-bin.000007
-rw-rw---- 1 mysql mysql 133 Feb 21 18:41 mysql-bin.index
drwx------ 2 mysql mysql 4096 Feb 21 17:08 performance_schema
[root@www.fangbei.org var]#

以及

[root@www.fangbei.org var]# cd /root
[root@www.fangbei.org ~]# ll
total 491064
drwxr-xr-x 4 mysql mysql 4096 Feb 21 16:44 databases_backup_20170221164407
drwxr-xr-x 7 root root 4096 May 27 2016 lnmp1.3-full
-rw-r--r-- 1 root root 500932095 Dec 4 12:32 lnmp1.3-full.tar.gz
-rw-r--r-- 1 root root 1898084 Feb 21 17:18 lnmp-install.log
[root@www.fangbei.org ~]# cd databases_backup_20170221164407/
[root@www.fangbei.org databases_backup_20170221164407]# ll
total 21284
drwx------ 2 mysql mysql 4096 Feb 21 16:38 100893722
-rw-r----- 1 mysql root 4654 Feb 21 16:44 www.fangbei.org.err
-rw-rw---- 1 mysql mysql 10485760 Feb 21 16:44 ibdata1
-rw-rw---- 1 mysql mysql 5242880 Feb 21 16:44 ib_logfile0
-rw-rw---- 1 mysql mysql 5242880 Feb 21 16:02 ib_logfile1
drwx------ 2 mysql mysql 4096 Feb 21 16:02 mysql
-rw-rw---- 1 mysql mysql 19758 Feb 21 16:02 mysql-bin.000001
-rw-rw---- 1 mysql mysql 765307 Feb 21 16:02 mysql-bin.000002
-rw-rw---- 1 mysql mysql 263 Feb 21 16:02 mysql-bin.000003
-rw-rw---- 1 mysql mysql 731 Feb 21 16:02 mysql-bin.000004
-rw-rw---- 1 mysql mysql 125 Feb 21 16:02 mysql-bin.000005
-rw-rw---- 1 mysql mysql 497 Feb 21 16:44 mysql-bin.000006
-rw-rw---- 1 mysql mysql 114 Feb 21 16:11 mysql-bin.index
[root@www.fangbei.org databases_backup_20170221164407]#

这些文件的生长速度是很快的,特别占用服务器资源。当服务器资源不够充足的情况下,我们可以选择定期删除这些日志文件,或者修改配置文件,不让日志生成。
编辑my.cnf 文件,命令:vi /etc/my.cnf
注释掉 log-bin=mysql-bin 这个属性

#skip-networking
max_connections = 500
max_connect_errors = 100
open_files_limit = 65535 # log-bin=mysql-bin
binlog_format=mixed
server-id = 1
expire_logs_days = 10

然后删除上述日志文件
最后重启 lnmp restart
3. 删除.user.ini文件
LNMP 1.2开始PHP防跨目录限制使用.user.ini,该文件在网站根目录下,可以修改open_basedir的值来设置限制目录的访问。
.user.ini文件无法直接修改,而且是隐藏文件可能在winscp下可能无法看到。
当网站被删除的时候,.user.ini可以用以下方法删除
[root@www.fangbei.org]# chattr -i ".user.ini"
[root@www.fangbei.org]# chmod 777 ".user.ini"
[root@www.fangbei.org]# rm ".user.ini"
LNMP的配置与优化的更多相关文章
- php-fpm安装、配置与优化
转载自:https://www.zybuluo.com/phper/note/89081 1.php中fastcgi和php-fpm是什么东西 最近在研究和学习PHP的性能方面的知识,看到了factc ...
- 实战Nginx与PHP(FastCGI)的安装、配置与优化
一.什么是 FastCGIFastCGI是一个可伸缩地.高速地在HTTP server和动态脚本语言间通信的接口.多数流行的HTTP server都支持FastCGI,包括Apache.Nginx和l ...
- nginx反向代理配置及优化
nginx反向代理配置及优化前言: 由于服务器apache抗不住目前的并发.加上前端squid配置后,问题依然无法解决.而页面程序大部分是动态.无法使用fastcgi来处理.因此想使用nginx做为反 ...
- 【转】实战Nginx与PHP(FastCGI)的安装、配置与优化
原文连接:http://ixdba.blog.51cto.com/2895551/806622 原文作者:南非蚂蚁 转载注明以上信息 一.什么是 FastCGIFastCGI是一个可伸缩地.高速地在H ...
- Nginx与Tomcat安装、配置与优化
Nginx与Tomcat安装.配置与优化 Nginx与Tomcat安装.配置与优化 Nginx的安装与使用 Nginx是一款优秀的反向代理服务器 安装: rpm(或者是pkg安装),是预编译好的程序包 ...
- Nginx配置性能优化与压力测试webbench【转】
这一篇我们来说Nginx配置性能优化与压力测试webbench. 基本的 (优化过的)配置 我们将修改的唯一文件是nginx.conf,其中包含Nginx不同模块的所有设置.你应该能够在服务器的/et ...
- 大型网站的 HTTPS 实践(三)——基于协议和配置的优化
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt389 1 前言 上文讲到 HTTPS 对用户访问速度的影响. 本文就为大家介 ...
- 项目重构之数据源配置与优化:log4j 配置数据库连接池Druid,并实现日志存储到数据库
作者:泥沙砖瓦浆木匠网站:http://blog.csdn.net/jeffli1993个人签名:打算起手不凡写出鸿篇巨作的人,往往坚持不了完成第一章节. 交流QQ群:[编程之美 365234583] ...
- Linux运维二:CentOS6.6系统安装后的基本配置与优化
CentOS6.6系统安装完成后还需要做一些配置与优化: 一:Linux内核版本号介绍 查看内核版本: [root@Gin scripts]# uname -r 2.6.32-504.el6.x86_ ...
随机推荐
- Ubuntu 16.04 下octave的使用入门
SciLab和octave是开源的且免费的矩阵计算工具,二者都有希望成为矩阵计算的新宠.相比之下, octave与MatLab的兼容性更高. octave遵循GPL协议(GNU General Pub ...
- 图片base64上传时可能遇到的问题
base64上传图片时服务器接到的值可能会丢失字符串 解决方法如下:(分为单个上传和多个上传) <?php $BASE_DIR = "../"; //文件上传 $img = ...
- MFC控件GDI编程
MFC控件GDI编程 一丶学习内容 1.了解常用的GDI函数绘图. 2.使用常用的画笔画刷. 二丶常用的GDI函数绘图 上方则为我们常用的GDI函数了. 画线 矩形. 以及圆 等等. 2.1 画线代码 ...
- 我们来说一说TCP神奇的40ms
本文由云+社区发表 TCP是一个复杂的协议,每个机制在带来优势的同时也会引入其他的问题. Nagel算法和delay ack机制是减少发送端和接收端包量的两个机制, 可以有效减少网络包量,避免拥塞.但 ...
- Centos 搭建named dns服务无法解析外网地址
搭建了DNS服务器来解析自定义的域名,但是在遇到非自定义的域名时,不会去自动解析.使用nslookup 会提示 ** server can't find xxxx: NXDOMAIN 网上找了说要配置 ...
- 读写锁ReentrantReadWriteLock:读读共享,读写互斥,写写互斥
介绍 DK1.5之后,提供了读写锁ReentrantReadWriteLock,读写锁维护了一对锁:一个读锁,一个写锁.通过分离读锁和写锁,使得并发性相比一般的排他锁有了很大提升.在读多写少的情况下, ...
- Cookie提要
Cookie的基本概念和设置 Cookie在远程浏览器端存储数据并以此跟踪和识别用户的机制.从实现上说,Cookie是存储在客户端上的小段数据,浏览器(即客户端)通过HTTP协议和服务器端进行Coo ...
- bash内置命令mapfile:读取文件内容到数组
bash提供了两个内置命令:readarray和mapfile,它们是同义词.它们的作用是从标准输入读取一行行的数据,然后每一行都赋值给一个数组的各元素.显然,在shell编程中更常用的是从文件.从管 ...
- ListView的setOnItemClickListener位置错乱问题
如果你对一个ListView同时addHeaderView(listhHeaderView),也就是头部视图,再加setAdapter,当你加上setOnItemClickListener事件后你会发 ...
- 第一册:lesson fifty three。
原文: An interesting climate. A:where do you come from? B:I come from England. A:What's the climate li ...