一, 搭建 Nginx
1, 解压压缩包
[[email protected] abc]# tar zxvf nginx-1.12.2.tar.gz -C /opt/
2, 创建用户, 并且不允许登录系统
[[email protected] abc]# useradd -M -s /sbin/nologin nginx
3, 安装编译工具
[[email protected] abc]# yum install gcc gcc-c++ pcre-devel zlib-devel -y
4, 进行编译安装
- [[email protected] opt]# cd nginx-1.12.2/
- ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
安装
[[email protected] nginx-1.12.2]# make && make install
5, 为了方便管理, 可以给 nginx 创建一个软连接
[[email protected] nginx-1.12.2]# ln -s /usr/local/nginx/sbin/*/usr/local/sbin/
6, 编写一个脚本, 可以用 systemctl 工具控制其开启, 关闭, 重载
- [email protected] nginx-1.12.2]# cd /lib/systemd/
- [[email protected] systemd]# cd system
- [[email protected] system]# VIM nginx.service
- [Unit]
- Description=nginx
- After=network.target
- [Service]
- Type=forking
- PIDFile=/usr/local/nginx/logs/nginx.pid
- ExecStart=/usr/local/nginx/sbin/nginx
- ExecReload=/usr/bin/kill -s HUP $MAINPID
- ExecStop=/usr/bin/kill -s QUIT $MAINPID
- PrivateTmp=true
- [Install]
- WantedBy=multi-user.target
添加权限
[email protected] system]# chmod 754 nginx.service
7, 启动 Nginx, 并关闭防火墙和增强性安全功能
- [[email protected] system]# systemctl start nginx.service
- [[email protected] system]# systemctl stop firewalld.service
- [[email protected] system]# setenforce 0
我们在客户机上进行访问
二, 搭建 MySQL
1, 解压 MySQL
[[email protected] abc]# tar zxvf MySQL-boost-5.7.20.tar.gz -C /opt/
2, 安装工具包
yum -y install ncurses ncurses-devel bison cmake
3, 创建用户
[[email protected] abc]# useradd -s /sbin/nologin MySQL
4, 编译
- [[email protected] abc]# cd /opt/
- [[email protected] opt]# cd MySQL-5.7.20/
- cmake -DCMAKE_INSTALL_PREFIX=/usr/local/MySQL -DMYSQL_UNIX_ADDR=/usr/local/MySQL/MySQL.sock -DSYSCONFDIR=/etc -DSYSTEMD_PID_DIR=/usr/local/MySQL -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/MySQL/data -DWITH_BOOST=boost -DWITH_SYSTEMD=1
5, 安装
make && make install
6, 设置权限
- [[email protected] MySQL-5.7.20]# cd /usr/local/
- [[email protected] local]# chown -R MySQL.MySQL MySQL/
7, 修改配置文件
- [[email protected] local]# VIM /etc/my.cnf
- [client]
- port = 3306
- default-character-set=utf8
- socket = /usr/local/MySQL/MySQL.sock
- [MySQL]
- port = 3306
- default-character-set=utf8
- socket = /usr/local/MySQL/MySQL.sock
- [mysqld]
- user = MySQL
- basedir = /usr/local/MySQL
- datadir = /usr/local/MySQL/data
- port = 3306
- character_set_server=utf8
- pid-file = /usr/local/MySQL/mysqld.pid
- socket = /usr/local/MySQL/MySQL.sock
- server-id = 1
- sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
8, 配置环境变量
- source /etc/profile
- echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH'>> /etc/profile
- echo 'export PATH'>> /etc/profile
启动
source /etc/profile
9, 初始化数据库
- [[email protected] MySQL]# cd /usr/local/MySQL/
- bin/mysqld --initialize-insecure --user=MySQL --basedir=/usr/local/MySQL --datadir=/usr/local/MySQL/data
10, 在当前路下复制到 /lib/systemd/system / 下, 方便 systemctl 管理
cp usr/lib/systemd/system/mysqld.service /lib/systemd/system/
11, 检查 MySQL 服务是否启动
[[email protected] MySQL]# systemctl start mysqld.service
12, 为 MySQL 设置密码
mysqladmin -u root -p password
登录数据库
MySQL -u root -p
三, 安装 PHP
1, 安装环境包
yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel
2, 解压 PHP
[[email protected] abc]# tar jxvf PHP-7.1.10.tar.bz2 -C /opt/
3, 编译
- [[email protected] /]# cd /opt/PHP-7.1.10/
- ./configure --prefix=/usr/local/PHP --with-MySQL-sock=/usr/local/MySQL/MySQL.sock --with-mysqli \ ### 客户端支持库
- --with-zlib --with-curl --with-gd --with-jpeg-dir --with-PNG-dir --with-freetype-dir --with-openssl --enable-fpm --enable-mbstring --enable-xml --enable-session --enable-ftp --enable-pdo --enable-tokenizer --enable-zip
4, 安装
[[email protected] PHP-7.1.10]# make && make install
5, 修改配置文件
- cp PHP.INI-development /usr/local/PHP/lib/PHP.INI // 复制到 lib 路径下
- [email protected] PHP-7.1.10]# VIM /usr/local/PHP/lib/PHP.INI
- mysqli.default_socket = /usr/local/MySQL/MySQL.sock // 指定路径
- date.timezone = Asia/Shanghai // 指定时区
四, 配置及优化 FPM 模块
1, 配置 FPM 模块
- cd /usr/local/PHP/etc/
- cp PHP-fpm.conf.default PHP-fpm.conf // 复制一份到 PHP-fpm.conf
- VIM PHP-fpm.conf // 进入文件
- pid = run/PHP-fpm.pid // 开启 pid(去掉行首的注释符即可)
- cd /usr/local/PHP/etc/PHP-fpm.d/
- cp www.conf.default www.conf // 复制扩展包
启动 PHP
/usr/local/PHP/sbin/PHP-fpm -c /usr/local/PHP/lib/PHP.INI
2, 检测是否成功开启
netstat -napt | grep 9000
3, 创建软连接以便系统识别
ln -s /usr/local/PHP/bin/*/usr/local/bin/
五, 让 Nginx 支持 PHP
- [email protected] PHP-fpm.d]# cd /usr/local/nginx/conf/
- [[email protected] conf]# VIM nginx.conf
- location ~ \.PHP$ {
- root html;
- fastcgi_pass 127.0.0.1:9000;
- fastcgi_index index.PHP;
- fastcgi_param SCRIPT_FILENAME /usr/local/nginx/HTML$fastcgi_script_name;
- include fastcgi_params;
- }
2, 重新启动 nginx 服务
[[email protected] conf]# systemctl restart nginx.service
3, 创建 PHP 首页
- VIM /usr/local/nginx/HTML/index.PHP
- <?PHP
- phpinfo();
- ?>
来源: http://www.bubuko.com/infodetail-3289656.html