当前位置: 首页 > Linux

实录:CentOS7.2配置LNMP环境实录

时间:2023-04-06 04:41:14 Linux

CentOS7.2配置LNMP环境实录php5.6+nginx1.10+mysql5.5+LNMP是Linux,Nginx,MySQL(MariaDB)andPHP的缩写,这个组合最常见WEB服务器的运行环境之一。本文将带领大家在CentOS7操作系统上搭建LNMP环境。本教程适用于CentOS7.x版本。准备更新yum源,内置源没有PHP5.6:rpm-Uvhhttps://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpmrpm-Uvhhttps://mirror.webtatic.com/yum/el7/webtatic-release.rpm安装epel:yuminstallepel-release然后更新系统:yumupdate准备工作完成,开始安装!内网源配置在NginxCentOS系统模板中,下载速度比较快,推荐使用yum安装Nginx:sudoyuminstallnginx按照提示输入yes开始安装。安装完成后,Nginx的配置文件在/etc/nginx目录下。使用如下命令启动Nginx:sudosystemctlstartnginx查看系统中的firewalld防火墙服务是否开启。如果开启,我们需要修改防火墙配置,开启Nginx外网端口访问。如果sudosystemctlstatusfirewalld显示active(运行中),则需要调整防火墙规则的配置。修改/etc/firewalld/zones/public.xml文件,在zone部分添加:...保存后,重新加载firewalld服务:sudosystemctlreloadfirewalld你可以通过浏览器访问http://<外网IP地址>来判断Nginx是否已经启动。最后设置Nginx开机启动:sudosystemctlenablenginx.service这样Nginx就安装成功了!安装MySQL(MariaDB)MariaDB是MySQL的一个分支,主要由开源社区维护和升级。MySQL被Oracle收购后,发展缓慢。在CentOS7的软件仓库中,将MySQL替换为MariaDB。我们可以使用yum直接安装MariaDB:sudoyuminstallmariadb-server安装完成后,执行以下命令重启MariaDB服务:sudosystemctlstartmariadbMariaDB默认root密码为空,我们需要设置一下,执行脚本:sudo/usr/bin/mysql_secure_installation该脚本将通过一系列交互式问答来配置MariaDB的安全设置。首先提示输入当前root密码:Entercurrentpasswordforroot(enterfornone):初始root密码为空,我们直接回车进入下一步。设置root密码?[Y/n]设置root密码,默认选项是Yes,我们直接回车,提示输入密码,这里设置你的MariaDBroot账户密码。删除匿名用户?[Y/n]是否移除匿名用户,默认选项是Yes,建议使用默认设置,回车继续。禁止root远程登录?[Y/n]禁止root用户远程登录?如果只在本机访问MariaDB,建议使用默认设置,回车继续。如果您有其他云主机需要使用root账号访问数据库,则需要选择n。删除测试数据库并访问它?[Y/n]是否要删除测试数据库并访问它?建议按照默认设置,回车继续。现在重新加载权限表?[Y/n]是否要重新加载权限表?因为我们上面更新了root密码,这里需要重新加载,回车。完成后会看到Success的提示!MariaDB的安全设置已经完成。我们可以使用如下命令登录MariaDB:mysql-uroot-p根据提示输入root密码,即可进入MariaDB交互界面,说明安装成功。最后,我们将MariaDB设置为开机启动。sudosystemctlenablemariadbinstallPHP我们可以直接使用yum安装PHP:sudoyuminstallphp56w-cliphp56w-fpmphp56w-mysqlphp56w-mysqliphp56wphp56w-opcachephp56w-gdphp56w-intlphp56w-mbstringphp56w-exifphp56w-mcryptphp5openssl//一次性安装到位安装完成后,我们启动php-fpm:sudosystemctlstartphp-fpm设置php-fpm开机:sudosystemctlenablephp-fpm接下来,需要注意的是!~ConfigureNginx--multiplesites我给大家提供一个模板作为参考:在nginx.conf中,我会详细给出中文注释vi/etc/nginx/nginx.conf//编辑nginx.conf的命令#For有关配置的更多信息,请参阅:#*官方英文文档:http://nginx.org/en/docs/#*官方俄文文档:http://nginx.org/ru/docs/usernginx;worker_processesauto;error_log/var/日志/nginx/error.log;#错误日志记录pid的位置/run/nginx.pid;#nginx.pid是记录nginx主进程的pid文件;不要修改或移动#加载动态模块。参见/usr/share/nginx/README.dynamic.include/usr/share/nginx/modules/*.conf;#引入/usr/share/nginx/modules/目录下所有以.conf结尾的文件events{worker_connections1024;}http{log_formatmain'$remote_addr-$remote_user[$time_local]"$request"''$status$body_bytes_sent"$http_referer"''"$http_user_agent""$http_x_forwarded_for"';access_log/var/log/nginx/access.logmain;发送文件;tcp_nopush上;tcp_nodelayon;keepalive_timeout65;types_hash_max_size2048;包括/etc/nginx/mime.types;default_type应用程序/八位字节流;#从/etc/nginx/conf.d目录加载模块化配置文件。#有关详细信息,请参阅http://nginx.org/en/docs/ngx_core_module.html#include#。包括/etc/nginx/conf.d/*.conf;#这句话很重要,importalletc/nginx/conf.d/目录下的.conf文件#***etc/nginx/conf.d/目录存放的是子站点的文件(下面会给出示例代码)***server{#因为我们的nginx需要配置多个站点,所以这里有一些需要注释的地方listen80default_server;听[::]:80默认服务器;#保留监听端口#server_name_;#根/usr/share/nginx/php;#加载默认服务器块的配置文件。#包含/etc/nginx/default.d/*.conf;#location/{#}#error_page404/404.html;location=/40x.html{}error_page500502503504/50x.html;location=/50x.html{}#location~\.php${#root/usr/share/php;#fastcgi_pass127.0.0.1:9000;#fastcgi_indexindex.php;#fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;#包含fastcgi_params;#}}#启用TLS的服务器设置。##server{#listen443sslhttp2default_server;#listen[::]:443sslhttp2default_server;#server_name_;#root/usr/share/nginx/html;##ssl_certificate"/etc/pki/nginx/server.crt";#ssl_certificate_key"/etc/pki/nginx/private/server.key";#ssl_session_cacheshared:SSL:1m;#ssl_session_timeout10m;#ssl_ciphersHIGH:!aNULL:!MD5;#ssl_prefer_server_cipherson;###加载默认服务器块的配置文件。#include/etc/nginx/default.d/*.conf;##location/{#}##error_page404/404.html;#location=/40x.html{#}##error_page500502503504/50x.html;#location=/50x.html{#}#}}#注意:这一份nginx.conf可以直接复制使用!~如果好用就给博主打赏吧!谢谢!配置好nginx之后我们应该做什么呢?当然是重启nginxservicenginxstart#启动nginxservicenginxstop#停止nginxservicenginxrestart#重启nginxsudosystemctlreloadnginx#或者执行这个重启后,继续打开http://<外网IP地址>判断Nginx是否有At这次服务器启动了nginx和apache,php-fpm默认发送给apache,所以我们还要继续修改php-fpm的配置php-fpm:vi/etc/php-fpm.d/www.conf#Editphp-fpm配置文件修改用户和组(源代码:user=apachegroup=apache)user=nginxgroup=nginx修改后还是一样,重启php-fpm服务servicephp-fpmstart#Startphp-fpmservicephp-fpmstop#Stopphp-fpmservicephp-fpmrestart#Restartphp-fpm最后我们要为nginx添加一个站点添加一个站点这里我先给大家截图帮助大家快速明白这是怎么回事?你应该看清楚。你可以猜猜。博主配置了三个站点。nginx是怎么引入这三个站点的?我贴给大家的nginx配置文件里应该有这么一句话(注意图中红框,上面是地址)include/etc/nginx/conf.d/*.conf;#这句话很重要,importalletc/nginx/conf.d/目录下的.conf文件#***etc/nginx/conf.d/目录存放子站点的文件(示例代码将下面给出)***好了,大家应该能准确理解,如果还是理解不了,只需要你回去喝点三鹿!接下来我把nginx站点配置文件的代码贴出来给大家,大家修改后就可以使用了。大家看代码的时候注意里面的路径。当然,我还是会给出一些中文评论{server_nameqopmall.comwww.qopmall.com;#这里是你要绑定的域名,用空格隔开location/{root/usr/share/php/weixin;#这里是你的站点存放文件夹的名字(就是说你当前站点的所有文件都丢在这个路径的weixin文件夹下)indexindex.phpindex.htmlindex.htm;#copyhere}#将PHP脚本传递给监听127.0.0.1:9000的FastCGI服务器#location~\.php${root/usr/share/php/weixin;#这里的配置等同于上面root配置fastcgi_pass127.0.0.1:9000;fastcgi_index索引x.php;fastcgi_paramSCRIPT_FILENAME/usr/share/php/weixin/$fastcgi_script_name;#这里的配置也和上面的root配置一样includefastcgi_params;}}代码很简单,不加注释就不用修改了;上面的路径,比如/usr/share/php/weixin这个是你站点的根目录,我给大家截图参考:各位童鞋,站点创建好了,先写一个简单的php程序测试一下是否正常,如info;【补充:很重要】有童鞋按照教程操作后发现80端口打不开。这是因为刚刚购买了阿里云的ECS服务器,80端口默认是关闭的。请移至阿里云控制台自行操作。需要步骤请自行百度!由于博主是菜鸟,顺便把自己的经验分享给大家。老司机请绕道!如果觉得博主的文章对你有帮助,或者对你还有用,请点个赞,土豪直接打赏就可以了,我没有异议!再见!~