在调试LNMP环境的PureFTP遇到一个问题：权限正常，所属用户组全是WWW,服务已经重启，但是就是上传文件时没有权限。最后从查看权限放手： lsattr #查看是否有只读权限发现问题所在，目录设置为了只读那么找到问题了，进行解决，去掉只读权限：chattr -i 目录名#去掉目录只读权限重新连接FTP，文件上传恢复正常
PureFtpd相关存放位置：PureFtpd 目录：/usr/local/pureftpd/PureFtpd配置文件：/usr/local/pureftpd/etc/pure-ftpd.conf具体解决方法有以下两点：1.进行防火墙与被动端口配置，打开配置文件查找以下内容去掉前面的#号并修改为自定端口：PassivePortRange 20000 30000 #默认为20000-30000编辑防火墙：vi /etc/sysconfig/iptables添加规则：-A INPUT -p tcp -m tcp --dport 20000:30000 -j ACCEPT #20000:30000修改为具体的端口2.PureFtpd配置文件里设置ForcePassiveIP为你的外网ipvi /usr/local/pureftpd/etc/pure-ftpd.conf找到ForcePassiveIP去掉前面的#号并把IP设置为服务器的公网IPForcePassiveIP 公网IP保存后重启Pureftpd服务：查看源码打印代码帮助/etc/init.d/pureftpd restart
1)建立文件/home/wwwlogs/pureftpd.log2)修改/etc/rsyslog.confvi /etc/rsyslog.conf在这行的cron.none后面添加 ;ftp.none 使ftp的日志信息成私有在/etc/rsyslog.conf文件最后加上以下：#pureftp日志 ftp.* -/home/wwwlogs/pureftpd.log3)使/etc/syslog.conf生效重启系统日志service rsyslog restart重启FTP服务/etc/init.d/pureftpd restart或service pureftpd restart
1.需要修改.user.ini 站点目录后加/chattr -i .user.ini #去掉文件无法修改属性修改内容为如下：open_basedir=/mnt/wwwroot/hunter.com/:/tmp/:/proc/ #默认目录后没有"/"2.使用LNMP1.4上需要将 /usr/localinx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在该行行前添加 # 或直接删除。3.修改站点伪静态，添加到日志access_log段前即可location / { if (!-e $request_filename) { rewrite ^/(.*)$ /index.php?s=$1 last; } }整个配置文件：server { listen 80; #listen [::]:80; server_name 域名; index index.html index.htm index.php default.html default.htm default.php; root 站点目录; include other.conf; #error_page 404 /404.html; include enable-php-pathinfo.conf; location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; } location ~ .*\.(js|css)?$ { expires 12h; } location ~ /\. { deny all; } location / { if (!-e $request_filename) { rewrite ^/(.*)$ /index.php?s=$1 last; } } access_log /home/wwwlogs/域名.log; }4.重启整个lnmp服务框架lnmp restart
在LNMP中找到fileinfo拓展开启后出现以下报错信息：Starting php-fpm [11-Dec-2017 22:18:24] NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/php_fileinfo.dll' - /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/php_fileinfo.dll: cannot open shared object file: No such file or directory in Unknown on line 0默认在安装时并未安装此拓展，具体方法如下：1)下载完整的tar包，要下载你当时下载的版本。 lnmp1.2: wget -c http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz lnmp1.3: wget -c http://soft.vpser.net/lnmp/lnmp1.3-full.tar.gz lnmp1.4: wget -c http://soft.vpser.net/lnmp/lnmp1.4-full.tar.gz2)解压包tar -vxf lnmp1.2-full.tar.gz3)进入lnmp软件目录cd /root/lnmp1.4-full/src #对应的版本目录自己ls一下4)解压已经安装对应版本的php包，这里以php5.5举例tar -vxf php-5.5.25.tar.gz5）进入php扩展目录并进入到该拓展文件夹下，这里是安装fileinfo拓展cd php-5.5.25/ext/fileinfo6）安装拓展/usr/local/php/bin/phpize提示：Configuring for: PHP Api Version: 20131106 Zend Module Api No: 20131226 Zend Extension Api No: 220131226执行：./configure --with-php-config=/usr/local/php/bin/php-config上条执行完成后执行：make && make install7）修改php.inilnmp的路径为：/usr/local/php/etc/php.ini将：extension = php_fileinfo.dll修改为：extension = fileinfo.so #注意删除php_并且后缀为so8）重启lnmp生效lnmp restart
近期在搞一个项目，1小时访问量达到了1万左右，在没有做Nginx集群的情况下，单Nginx遇到了瓶颈，经过了配置优化以及系统里面的内核的优化，成功使用单Nginx顶住了高访问量，配置如下：1.修改Linux内核链接数参数echo 2048 >> /proc/sys/net/core/somaxconn #这样只是写进去了重启后保存不了在/etc/sysctl.conf中添加如下vi /etc/sysctl.confnet.core.somaxconn = 2048#添加该行然后在终端中执行sysctl -p2.修改Nginx配置文件server{listen 80 backlog=2048;这个值不能高于内核握手数3.Nginx指定CPU修改Nginx.conf文件worker_processes 8;#8核处理器 worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000;#8核情况强制分配核数 worker_rlimit_nofile 204800;# fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 256k; fastcgi_buffers 4 128k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 512k; fastcgi_intercept_errors on;