您现在的位置是:群英 > 服务器 > 系统运维
CentOS7安装LNMP环境 如何使用yum工具分开安装LNMP?
Admin发表于 2023-07-07 11:50:54285 次浏览
在这篇文章中我们将学习“CentOS7安装LNMP环境 如何使用yum工具分开安装LNMP?”的相关知识,下文有详细的介绍及实例,步骤过程清晰,简单易懂,小编觉得挺不错的,有需要的朋友可以借鉴参考,希望大家阅读完这篇能有所获。


LNMP环境:linux(centos7)+ngix(1.12.2)+mariadb(5.5.56)+php(5.4.16)

一、安装MariaDB

[plain] view plain  copy

  1. #yum install mariadb mariadb-server #询问是否要安装,输入Y即可自动安装,直到安装完成  
  2.    
  3. #systemctl start mariadb.service #启动MariaDB  
  4.    
  5. #systemctl stop mariadb.service #停止MariaDB  
  6.    
  7. #systemctl restart mariadb.service #重启MariaDB  
  8.    
  9. #systemctl enable mariadb.service #设置开机启动  
  10.    
  11. #cp /usr/share/mysql/my-huge.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)  
  12.    
  13. mysql_secure_installation  
  14.    
  15. 回车,根据提示输入Y  
  16.    
  17. 输入2次密码,回车  
  18.    
  19. 根据提示一路输入Y  
  20.    
  21. 最后出现:Thanks for using MySQL!  
  22.    
  23. MySql密码设置完成,重新启动 MySQL:  
  24. #systemctl restart mariadb.service   
  25.   
  26. 允许远程连接 进入mysql    
  27. #mysql -uroot -p  
  28. >use mysql;  
  29. >GRANT ALL ON *.* TO root@'%' IDENTIFIED BY 'MariaDBPassword' WITH GRANT OPTION;  
  30. >quit  
  31. 重启mariadb    
  32. #systemctl restart mariadb.service  

二、安装nginx

由于centos7没有nginx源,所以首先要配置nginx源:

由于yum源中没有我们想要的nginx,那么我们就需要创建一个“/etc/yum.repos.d/nginx.repo”的文件,其实就是新增一个yum源。

[root@niaoyun~]# vim /etc/yum.repos.d/nginx.repo

然后将下面的内容复制进去:

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

然后保存“/etc/yum.repos.d/nginx.repo”文件后,我们就使用yum命令查询一下我们的nginx的yum源配置好了没有。

[root@niaoyun~]# yum list |grep nginx

nginx.x86_64 1:1.10.1-1.el7.ngx nginx

nginx-debug.x86_64 1:1.8.0-1.el7.ngx nginx

nginx-debuginfo.x86_64 1:1.10.1-1.el7.ngx nginx

nginx-module-geoip.x86_64 1:1.10.1-1.el7.ngx nginx

nginx-module-image-filter.x86_64 1:1.10.1-1.el7.ngx nginx

nginx-module-njs.x86_64 1:1.10.1.0.0.20160414.1c50334fbea6-1.el7.ngx

nginx

nginx-module-perl.x86_64 1:1.10.1-1.el7.ngx nginx

nginx-module-xslt.x86_64 1:1.10.1-1.el7.ngx nginx

nginx-nr-agent.noarch 2.0.0-9.el7.ngx nginx

pcp-pmda-nginx.x86_64 3.10.6-2.el7 base

执行安装:

 

 

[plain] view plain  copy

   

  1. #yum install nginx  
  2.    
  3. 启动    
  4. #systemctl start nginx.service  
  5.    
  6. 自动启动  
  7. #systemctl enable nginx.service  
  8.    
  9. #mkdir /data  
  10. #mkdir /data/logs  
  11. #mkdir /data/logs/nginx  
  12. #chown -R nginx:nginx /data/logs/nginx  
  13.    
  14. 配置  
  15. #vi /etc/nginx/nginx.conf  
  16.    
  17. error_log /data/logs/nginx/error.log;  
  18.    
  19. events {  
  20.     worker_connections 1024;  
  21.     use epoll;  //增加此行 如果你使用Linux 2.6+,你应该使用epoll。  
  22. }  
  23.   
  24. http {  
  25.      access_log  /data/logs/nginx/access.log  main;  

三、安装php

 

 

[plain] view plain  copy

   

  1. #yum install php php-fpm php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash    
  2. 启动php-fpm  
  3. #systemctl start php-fpm.service  
  4. 自动启动php-fpm  
  5. #systemctl enable php-fpm.service 

四、配置PHP、NginX

1、配置PHP

[plain] view plain  copy

  1. # vi /etc/php.ini  
  2.    
  3. 修改如下内容 (可根据情况修改)     
  4.    
  5. memory_limit = 256M    
  6. upload_max_filesize = 256M  
  7. post_max_size = 256M  
  8. ----------------------------------- 
  9.    
  10. 保存,  
  11.    
  12. 然后  
  13. 由于php-fpm中session保存目录为:php_value[session.save_path] = /var/lib/php/session
  14. mkdir /var/lib/php/session   
  15. chmod -R 777 /var/lib/php/session  
  16.  

2、配置NginX 

[php] view plain  copy

  1. # nginx虚拟主机配置文件一般都在/etc/nginx/conf.d目录下,每添加一个子域名,就创建一个.conf文件,配置如下    
  2. # vi /etc/nginx/conf.d/phplee.com.conf      
  3. # phplee.com    
  4.   
  5. server {      
  6.     listen       80;      
  7.     server_name  www.phplee.com phplee.com;      
  8.     root /usr/www/phplee.com;    
  9.     index  index.html index.htm index.php;     
  10.            
  11.     location / {      
  12.         try_files $uri $uri/ /index.php$is_args$args;    
  13.     }   
  14.       
  15.     location ~ \.php$ {    
  16.         fastcgi_pass   127.0.0.1:9000;    
  17.         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;    
  18.         include        fastcgi_params;    
  19.     }    
  20.       
  21.     #以上是基本配置,包含运行php脚本的fastcgi配置,下面是其他功能配置    
  22.     location @rewrite {      
  23.         set $static 0;      
  24.         if  ($uri ~ \.(css|js|jpg|jpeg|png|gif|ico|woff|eot|svg|css\.map|min\.map)$) {      
  25.             set $static 1;      
  26.         }      
  27.         if ($static = 0) {      
  28.             rewrite ^/(.*)$ /index.php?s=/$1;      
  29.         }      
  30.     }      
  31.     location ~ /Uploads/.*\.php$ {      
  32.         deny all;      
  33.     }         
  34.     location ~ /\.ht {      
  35.         deny  all;      
  36.     }   
  37.       
  38.     error_page    404    /404.html;    
  39.     location = /404.html {      
  40.         return 404 'Sorry, File not Found!';      
  41.     }      
  42.     error_page  500 502 503 504  /50x.html;      
  43.     location = /50x.html {      
  44.         root   /usr/share/nginx/html; # windows dir       
  45.     }     
  46. }  

  

注意: root 项应该配置在server下,这样 php配置项才能正常读取,如果root项配置在location下面,则php配置项$document_root应为真实路径 /usr/www/phplee.com

[php] view plain  copy

  1. fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;   

在最新的 nginx 版本中,使用 fastcgi.conf 代替 fastcgi.params ,因为在 fastcgi.conf 中多了一个 fastcgi_param  配置:

 

[plain] view plain  copy

 

  1. fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;  

所以在

location ~ \.php$ {

...

}

中不再需要配置该参数。

五、防火墙配置

 

CentOS 7 网络防火墙由 iptables 变为 firewalld,操作方法如下:

[plain] view plain  copy

 

  1. # 查看 firewalld 当前激活区块信息  
  2. [root@localhost test1]# firewall-cmd --get-active-zones  
  3. public  
  4.   interfaces: enp0s9 enp0s10  
  5. # 查看 public 区块所有的规则,这里有2个services,0个ports规则  
  6. [root@localhost test1]# firewall-cmd --zone=public --list-all  
  7. public (active)  
  8.   target: default  
  9.   icmp-block-inversion: no  
  10.   interfaces: enp0s9 enp0s10  
  11.   sources:  
  12.   services: ssh dhcpv6-client  
  13.   ports:  
  14.   protocols:  
  15.   masquerade: no  
  16.   forward-ports:  
  17.   source-ports:  
  18.   icmp-blocks:  
  19.   rich rules:  
  20. # 添加 80 和3306 端口的永久开启规则  
  21. [root@localhost test1]# firewall-cmd --zone=public --add-port=80/tcp --permanent  
  22. success  
  23. [root@localhost test1]# firewall-cmd --zone=public --add-port=3306/tcp --permanent  
  24. success  
  25. # 重新加载所有规则  
  26. [root@localhost test1]# firewall-cmd --reload  
  27. success  
  28. # 再次查看,发现刚才添加的规则已生效  
  29. [root@localhost test1]# firewall-cmd --zone=public --list-all  
  30. public (active)  
  31.   target: default  
  32.   icmp-block-inversion: no  
  33.   interfaces: enp0s9 enp0s10  
  34.   sources:  
  35.   services: ssh dhcpv6-client  
  36.   ports: 80/tcp 3306/tcp  
  37.   protocols:  
  38.   masquerade: no  
  39.   forward-ports:  
  40.   source-ports:  
  41.   icmp-blocks:  
  42.   rich rules:  

访问nginx站点,正常显示~!


通过以上内容的阐述,相信大家对“CentOS7安装LNMP环境 如何使用yum工具分开安装LNMP?”已经有了进一步的了解,更多相关的问题,欢迎关注群英网络或到群英官网咨询客服。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

相关信息推荐
2023-09-23 11:24:42 
摘要:LEMP环境下WordPress建站教程
2022-05-10 11:13:43 
摘要:区别:1、open是UNIX系统调用函数,而fopen是ANSIC标准中的C语言库函数;2、open的移植性没fopen好;3、fopen只能操纵普通正规文件,而open可以操作普通文件、网络套接字等;4、open无缓冲,fopen有缓冲。
2023-07-07 11:52:10 
摘要:Centos7 yum安装 Lnmp以及Lamp
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部