一键安装包已经更新到lnmp1.5了。下面我们安装一次这个版本
参考:https://lnmp.org/install.html
看这个更新记录 https://lnmp.org/changelog.html ,发现已经增加了增加PHP模块fileinfo选项,记得在lnmp1.4中没有这个模块,之后要用到,安装了很长时间才安装好,所以lnmp1.5有这个模块,我就直接安装好,省的以后麻烦。
一,安装lnmp环境
1.下载
http://soft.vpser.net/lnmp/lnmp1.5.tar.gz
从这里将包下载好,解压,找到 lnmp.conf 这个文件打开,发现有Enable_PHP_Fileinfo和Enable_Nginx_Lua 后面全是n,所以我们只需要安装fileinfo,所以,将它改成 y 就好了,
如果你不要fileinfo这个模块,可以执行下面的语句
wget -c http://soft.vpser.net/lnmp/lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz && cd lnmp1.5 && ./install.sh lnmp
如需要安装LNMPA或LAMP,将./install.sh 后面的参数lnmp替换为lnmpa或lamp即可。如需更改网站和数据库目录、自定义Nginx参数、PHP参数模块、开启lua等需在运行./install.sh 命令前修改安装包目录下的 lnmp.conf 文件,详细可以查看lnmp.conf文件参数说明。
2.包放的位置
上面改好以后,将这个包放到你想放的服务器位置,通过ftp我放在了/home/tmp中,没有tmp文件夹,可以自己新建一个,将包放到tmp文件夹中。
3.安装
依次执行下面的命令
cd /home/tmp
chmod -R 777 lnmp1.5
cd lnmp1.5
./install.sh
之后按照提示选择自己需要的版本
大概30分钟之后就会装好了
我们用 php -m 看一下有哪些模块,看到有 fileinfo 就放心了
我们还可以用 php -v 看一下php安装的是哪个版本,再看看 phpinfo 和 php -v 的版本是不是一样的
一键安装包安装好了之后默认有phpinfo.php
http://101.132.186.231/phpinfo.php 这样就可以看到 phpinfo 了
可选1,(1.4版)执行:./install.sh mphp 在LNMP模式下可安装多PHP版本。
(1.2,1.3版)执行:./php5.2.17.sh 可安装一个不与LNMP冲突的PHP 5.2.17单独存在,使用时需要将nginx虚拟主机配置文件里的 php-cgi.sock 修改为 php-cgi52.sock。
可选2,LNMP/LNMPA/LAMP卸载脚本,执行:./uninstall.sh 按提示输入当前模式序号,即可删除,1.4之前版本请自行备份好数据库,网站文件等不会删除。
可选3,(以下几个脚本在安装包tools目录下)执行:./reset_mysql_root_password.sh 可重置MySQL/MariaDB的root密码。
可选4,执行:./check502.sh 可检测php-fpm是否挂掉,502报错时重启,配合crontab使用。
可选5,执行:./cut_nginx_logs.sh 日志切割脚本。
可选6,执行:./remove_disable_function.sh 运行此脚本可删掉禁用函数。
可选7,执行:./remove_disable_function.sh 防跨目录移除工具
如果你用的php框架是 Thinkphp、codeigniter、Laravel 等等,网站目录一般是在public下,但是public下的程序要跨目录调用public上级目录下的文件,因为LNMP默认是不允许跨目录访问的,所以都是必须要将防跨目录访问的设置去掉,有时候这些框架类的程序提示500错误也可能是这个问题引起的。
这时我们要做##防跨目录设置##
参考:https://lnmp.org/faq/lnmp-vhost-add-howto.html
LNMP 1.1及之前的版本使用php.ini里面,open_basedir设置
LNMP 1.2及更高版本防跨目录功能使用.user.ini,该文件在网站根目录下,可以修改.user.ini 里面的open_basedir的值来设置限制访问的目录或删除来移除防跨目录的设置。
.user.ini文件无法直接修改,如要修或删除需要先执行:chattr -i /网站目录/.user.ini
可以使用winscp文件管理、vim编辑器或nano编辑器进行修改。
删除的话rm -f /网站目录/.user.ini 就可以。
修改完成后再执行:chattr +i /网站目录/.user.ini
.user.ini不需要重启一般5分钟左右生效,也可以重启一下php-fpm立即生效。
如果要更改网站目录必须要按上述方法修改防跨目录的设置,否则肯定报错!!
LNMP 1.4上如果不想用防跨目录或者修改.user.ini的防跨目录的目录还需要将 /usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在该行行前添加 # 或删除改行,需要重启nginx。
二,安装redis
参考:https://lnmp.org/faq/addons.html
我要安装redis
注意:以下操作均需要在lnmp压缩包解压后的目录里运行
cd /home/tmp/lnmp1.5
./addons.sh install redis
按照提示安装就行了
我们用 php -m 看一下有哪些模块,看到有 redis 就放心了
三,修改redis端口号
1.找到redis的安装位置, 找到redis.conf
find / -name redis.conf
2. 查找port 修改端口号, 查找requirepass修改密码(密码修改把前面注释打开)
3.修改端口,密码
4.重启
/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf
注:如果redis已经启动了, 要先停掉进程 ,然后再执行上面命令去重启
5.重新输入端口号 ,密码进入
四,远程连接redis
1.查看防火墙
iptables -L -n
我的是这样的,从最后一句知道6379端口被限制了。所以要开启6379端口,我是这样做的,直接在上面加一个开启6379的端口
iptables -I INPUT -p TCP -s 0.0.0.0/0 --dport 6379 -j ACCEPT
这样就加好了,注意:一定要加在上面
看到没有,最上面的一句就是刚加的
这个时候你去远程连接redis,可能会报错
是说redis-cli这个没有找到,所以安装一下
wget http://download.redis.io/redis-stable.tar.gz(下载redis-cli的压缩包)
tar xvzf redis-stable.tar.gz(解压)
cd redis-stable(进入redis-stable目录)
make(安装)
sudo cp src/redis-cli /usr/local/bin/(将redis-cli拷贝到bin下,让redis-cli指令可以在任意目录下直接使用)
再次执行:redis-cli -h 47.101.54.26 -p 6379,还是报错
这是因为我在安装好redis的时候,将redis.conf的配置文件改了,将bind 127.0.0.1前面的注释去掉了,这时只能本地访问,那么我们改成连接本地的,连接本地redis
redis-cli -h 127.0.0.1 -p 6379
结果:
连接成功了。我们再将bind 127.0.0.1前面的注释加上,再远程访问一下
也可以直接加密码连接:redis-cli -h 47.101.54.26 -p 6379 -a password
不过这样连接会有一个警告:Warning: Using a password with '-a' option on the command line interface may not be safe.
意思是 警告:在命令行界面上使用带有“-A”选项的密码可能不安全。只是一个提示,可以不用理会
连接也成功了。
我们再往下看
如果你的redis是高版本的,要进行下面的操作
首先,停止redis服务。
然后,修改redis.conf文件,将其中的bind 127.0.0.1注释掉,同时将protected-mode yes改为no。
最后,重启redis。
现在我们去远程连接redis是否能连上呢,可能你的是可以了,但是我的还是连接不上,问题很严重,过程很复杂
由于我的是阿里云服务器,想到是不是要到阿里云的后台去设置,于是.....
我在安全组规则中添加了一行开放6379的端口,再去远程连接,可以了,惊不惊喜,意不意外,高不高兴,万里长征终于走完了。
五,用navicat连接mysql
遇到这个问题首先到mysql所在的服务器上用连接进行处理
1、连接服务器: mysql -u root -p
2、看当前所有数据库:show databases;
3、进入mysql数据库:use mysql;
4、查看mysql数据库中所有的表:show tables;
5、查看user表中的数据:select Host, User,Password from user;
6、修改user表中的Host:update user set Host='%' where User='root';
7、最后刷新一下:flush privileges;
上面的安装如果遇到问题,可以到一键安装包的官网去查看原因 https://lnmp.org/ ,也可以加我的qq:837526619 咨询