centos/linux下安装搭建lnmp环境
本文提供在centos/linux搭建一套高性能的web服务器环境LNMP,即:linux + nginx +mysql + php; 可以做网站部署,app的接口部署,直播流并发等多类用途。
安装nginx
- 01
which nginx #查看nginx是否存在
- 02
yum list nginx #列出nginx yum install nginx #安装nginx 期间 出现 is this ok【Y/N】: 输入y #看见{Complete! } 安装成功。
- 03
which nginx #查看nginx是否存在 service nginx start #启动nginx进程方法[1] /etc/init.d/nginx start #启动nginx进程方法[2] 方法[1]或者方法[2]可以任选,启动服务的过程中可能会报错 Starting nginx: nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol) [FAILED] 解决方法:修改nginx的配置 cd /etc/nginx/conf.d/ vi default.conf 按键盘i进行编辑状态,在 [::]:80这一行前面加“#”表示注释这一行,然后按键盘Esc键,最后输入:wq (保存退出) 重新启动nginx进程(方法[1]或者方法[2]) ps -ef | grep nginx #查看nginx进程
- 04
curl members.3322.org/dyndns/getip #查看外网IP 在浏览器中输入你看到的IP,能显示nginx的欢迎页面表示nginx已经安装成功 如果没有显示 那很有可能是防火墙的80端口没有打开 解决方法: /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT /etc/rc.d/init.d/iptables save /etc/init.d/iptables restart 也可以关闭防火墙:service iptables stop 一般情况下 刚租的服务器 防火墙都是关闭的
安装php
- 01
yum -y install php php-fpm #安装php 和php-fpm软件包 #看见{Complete! } 安装成功。
- 02
启动php-fpm: /etc/init.d/php-fpm start #1 service php-fpm start #2
- 03
修改nginx配置文件让PHP的请求转发到php-fpm所绑定的ip和端口上: vi /etc/nginx/conf.d/default.conf 在server{};里面最底端输入 location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } 输入:wq保存退出
- 04
【重点】重启nginx: service nginx restart -------------------------------------------------- 验证是否处理请求PHP文件: vi /usr/share/nginx/html/info.php <?php phpinfo(); --------------------------------------------------- 访问IP网址: http://外网IP/info.php
安装mysql
- 01
yum -y install mysql mysql-server #不需要提示安装 #看见{Complete! } 安装成功。
- 02
service mysqld start #启动mysql服务器 mysqladmin -u root password 123456 #123456换成你要设置的密码 登录mysql测试一下 mysql -u root -p Enter password: (你自己设的密码) 其中-u后跟的是用户名,-p要求输入密码,回车后在输入密码处输入密码。 Ctrl-C -- exit! #退出终端
- 03
安装php对mysql操作的扩展 yum -y install php-mysql #安装php-mysql 扩展 service php-fpm restart #重启php-fpm进程
- 04
检查是否可以通过php操作mysql数据库: vi /usr/share/nginx/html/dbConnect.php <?php @mysqli_connect("localhost","root","你设置的mysql的密码","mysql") or die("connect mysql failed\n"); echo "connect ok\n"; http://外网IP/dbConnect.php #在浏览器执行