华为云主机CentOS 7.3安装LNMP

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介:

准备工作

1
2
3
4
5
6
7
cd /usr/local/src
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz 
wget http://cn2.php.net/distributions/php-5.6.30.tar.gz 
wget http://nginx.org/download/nginx-1.12.1.tar.gz 
tar zxf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
tar zxf php-5.6.30.tar.gz
tar zxf nginx-1.12.1.tar.gz

软件安装

MySQL

1
2
3
4
5
6
7
8
9
10
11
12
13
mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql
cd ../mysql/
useradd mysql
mkdir /data/
yum install -y perl perl-Data-Dumper libaio libaio-devel
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
cp support-files/my-default.cnf /etc/my.cnf  
cp support-files/mysql.server /etc/init.d/mysqld
vi /etc/init.d/mysqld
     basedir=/usr/local/mysql
     datadir=/data/mysql
chkconfig --add mysqld
service mysqld start

PHP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
useradd -s /sbin/nologin php-fpm
cd /usr/local/src/php-5.6.30
wget http://vault.centos.org/5.7/os/x86_64/CentOS/kernel-headers-2.6.18-274.el5.x86_64.rpm 
rpm -ivh kernel-headers-2.6.18-274.el5.x86_64.rpm
yum install -y gcc libxml2-devel openssl-devel bzip2-devel libjpeg-turbo-devel libpng-devel freetype-devel libmcrypt-devel libcurl-devel
./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/local/php-fpm/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --with-pear --with-curl  --with-openssl
make && make install
cp php.ini-production /usr/local/php-fpm/etc/php.ini
cp /usr/local/src/php-5.6.30/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
vi /usr/local/php-fpm/etc/php-fpm.conf
     [global]
     pid = /usr/local/php-fpm/var/run/php-fpm.pid
     error_log = /usr/local/php-fpm/var/log/php-fpm.log
     [www]
     listen = /tmp/php-fcgi.sock
     listen.mode = 666
     user = php-fpm
     group = php-fpm
     pm = dynamic
     pm.max_children = 50
     pm.start_servers = 20
     pm.min_spare_servers = 5
     pm.max_spare_servers = 35
     pm.max_requests = 500
     rlimit_files = 1024
chmod 755 /etc/init.d/php-fpm 
chkconfig --add php-fpm
chkconfig php-fpm on
service php-fpm start

Nginx

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
cd /usr/local/src/nginx-1.12.1
./configure --prefix=/usr/local/nginx
make && make install
vi /etc/init.d/nginx 
     #!/bin/bash
     # chkconfig: - 30 21
     # description: http service.
     # Source Function Library
     . /etc/init.d/functions
     # Nginx Settings
     NGINX_SBIN="/usr/local/nginx/sbin/nginx"
     NGINX_CONF="/usr/local/nginx/conf/nginx.conf"
     NGINX_PID="/usr/local/nginx/logs/nginx.pid"
     RETVAL=0
     prog="Nginx"
     start() 
     {
         echo -n $"Starting $prog: "
         mkdir -p /dev/shm/nginx_temp
         daemon $NGINX_SBIN -c $NGINX_CONF
         RETVAL=$?
         echo
         return $RETVAL
     }
     stop() 
     {
         echo -n $"Stopping $prog: "
         killproc -p $NGINX_PID $NGINX_SBIN -TERM
         rm -rf /dev/shm/nginx_temp
         RETVAL=$?
         echo
         return $RETVAL
     }
     reload()
     {
         echo -n $"Reloading $prog: "
         killproc -p $NGINX_PID $NGINX_SBIN -HUP
         RETVAL=$?
         echo
         return $RETVAL
     }
     restart()
     {
         stop
         start
     }
     configtest()
     {
         $NGINX_SBIN -c $NGINX_CONF -t
         return 0
     }
     case "$1" in
       start)
             start
             ;;
       stop)
             stop
             ;;
       reload)
             reload
             ;;
       restart)
             restart
             ;;
       configtest)
             configtest
             ;;
       *)
             echo $"Usage: $0 {start|stop|reload|restart|configtest}"
             RETVAL=1
     esac
     exit $RETVAL
chmod 755 /etc/init.d/nginx
chkconfig --add nginx
chkconfig nginx on
cd /usr/local/nginx/conf/; mv nginx.conf nginx.conf.bak
vi nginx.conf
     user nobody nobody;
     worker_processes 2;
     error_log /usr/local/nginx/logs/nginx_error.log crit;
     pid /usr/local/nginx/logs/nginx.pid;
     worker_rlimit_nofile 51200;
     events
     {
         use epoll;
         worker_connections 6000;
     }
     http
     {
         include mime.types;
         default_type application/octet-stream;
         server_names_hash_bucket_size 3526;
         server_names_hash_max_size 4096;
         log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'
         ' $host "$request_uri" $status'
         ' "$http_referer" "$http_user_agent"';
         sendfile on;
         tcp_nopush on;
         keepalive_timeout 30;
         client_header_timeout 3m;
         client_body_timeout 3m;
         send_timeout 3m;
         connection_pool_size 256;
         client_header_buffer_size 1k;
         large_client_header_buffers 8 4k;
         request_pool_size 4k;
         output_buffers 4 32k;
         postpone_output 1460;
         client_max_body_size 10m;
         client_body_buffer_size 256k;
         client_body_temp_path /usr/local/nginx/client_body_temp;
         proxy_temp_path /usr/local/nginx/proxy_temp;
         fastcgi_temp_path /usr/local/nginx/fastcgi_temp;
         fastcgi_intercept_errors on;
         tcp_nodelay on;
         gzip on;
         gzip_min_length 1k;
         gzip_buffers 4 8k;
         gzip_comp_level 5;
         gzip_http_version 1.1;
         gzip_types text/plain application/x-javascript text/css text/htm 
         application/xml;
         server
         {
             listen 80;
             server_name localhost;
             index index.html index.htm index.php;
             root /usr/local/nginx/html;
             location ~ \.php$ 
             {
                 include fastcgi_params;
                 fastcgi_pass unix:/tmp/php-fcgi.sock;
                 fastcgi_index index.php;
                 fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
             }    
         }
     }
/etc/init.d/nginx start

效果测试

1
2
3
4
vi /usr/local/nginx/html/1.php
     <?php
       echo "test";
     ?>

wKioL1mYUMXSr5zEAABkjpr6L3o930.png-wh_50
















本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1957718,如需转载请自行联系原作者


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
3月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
769 69
|
2月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
1087 2
|
3月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
387 78
|
2月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
571 16
|
4月前
|
Linux 网络安全 Apache
针对在Centos/Linux安装Apache过程中出现的常见问题集锦
以上每个问题的解决方案应深入分析错误日志、系统消息和各种配置文件,以找到根本原因并加以解决。务必保持系统和Apache软件包更新到最新版本,以修复已知的bugs和安全漏洞。安装和管理Web服务器是一项需要细致关注和不断学习的任务。随着技术的发展,推荐定期查看官方文档和社区论坛,以保持知识的更新。
240 80
|
3月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
332 10
|
4月前
|
人工智能 数据挖掘 Linux
Centos安装Python3.7(亲测可用)
本指南详细介绍了在基于Linux(以CentOS系统为例,使用yum包管理器)的系统上安装Python 3.7版本的完整流程。Python是一种广泛使用的高级编程语言,在各种领域如软件开发、数据分析、人工智能和区块链开发等都有着重要的应用。
490 2
|
3月前
|
运维 网络协议 Linux
CentOS下Bind服务的安装与故障排查
通过以上的步骤,您应该能够在CentOS系统上安装并配置BIND DNS服务,并进行基本的故障排查。
373 0
|
3月前
|
存储 Ubuntu Linux
安卓手机免root安装各种Linux系统:Ubuntu, Centos,Kali等
此外还可以安装Slackware、Archstrike等系统,还可以通过github查找方法安装更多有趣的东西。 昨日小编就是通过Termux安装的Kali Linux工具包。