lnmp服务器环境,分别表示 `linux`,`nginx`,`mysql`,`php`。 ## 前言 我的VPS装的系统是 centos6.5,`yum install php`默认安装的是5.3版本。而我用的一个微信类库,最低要求是php5.5,所以只能另寻他法。 之前在本地用 《[LNMP一键安装包](http://lnmp.org/)》安装过lnmp环境,感觉挺方便的。最后就也用了这个一键安装包。虽然编译时间有点长,大概半小时吧。不要问我为什么不手动安装,因为安装php-fpm5.6失败了,懒得浪费时间。 > 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、备份等许多实用脚本。 ## 安装方法 安装LNMP执行: ~~~ wget -c http://soft.vpser.net/lnmp/lnmp1.3-full.tar.gz tar zxf lnmp1.3-full.tar.gz cd lnmp1.3-full ./install.sh lnmp ~~~ `注意`:上述四行代码,为了阅读方便,进行了换行,实际使用 可使用 && 连接,一行代码,即可完整安装。 安装过程很简单,选择合适的版本,设置好mysql密码即可。 ## 经验 ### 去掉index.php,适用于单入口程序 在nginx.conf文件中server节点里面 root字段 下一行 加入以下代码: ~~~ # root /home/wwwroot; if (!-e $request_filename) { rewrite ^(.*)$ /index.php$1 last; } ~~~ ### 访问php程序,报错`Access denied` 因为CI使用了`pathinfo`,而`nginx`默认配置不支持。需要更改nginx.conf配置文件。 1、改`include enable-php.conf` 为 `include enable-php-pathinfo.conf`; 2、在`enable-php-pathinfo.conf`文件中加入 > fastcgi_split_path_info ^((?U).+\.php)(/?.+)$; ### Codeigniter在linux找不到类 我的程序用的是Codeigniter,居然出现libraries下的类无法正常加载(本地windows环境下正常)。google之,在stackoverflow上找到答案,居然要区分大小写!!!。幸好我只有两个类报错……