``关闭SELinux
# 临时关闭selinux
setenforce 0
# 永久关闭selinux
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
关闭防火墙
# 临时关闭防火墙:
systemctl stop firewalld
# 永久关闭防火墙:
systemctl disable firewalld
# -c 是断点续传
wget -c http://nginx.org/download/nginx-1.18.0.tar.gz
yum install gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel -y
# centos 最小化安装推荐安装包
# 可装可不装,
yum -y install vim-enhanced tcpdump lrzsz tree telnet bash-completion net-tools wget bzip2 lsof tmux man-pages zip unzip nfs-utils gcc make gcc-c++ glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel zlib-devel
# 解压缩
tar -zxvf nginx-1.18.0.tar.gz
# 切换工作目录
cd nginx-1.18.0
# 预编译指定安装目录
./configure --prefix=/usr/local/nginx
make && make install
# 修改启动用户
# 默认是nginx,不改这里改 php 配置文件也可以
user nobody;
# 修改进程数,根据实际情况修改
worker_processes auto;
# 开启 日志规则
http{
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
# 把vhost文件夹内的配置文件导入
# 源码是没有
include vhost/*.conf;
server{
.......
}
}
# 建立虚拟主机文件夹
mkdir /usr/local/nginx/conf/vhost
# 建立网站目录文件夹
mkdir /usr/local/nginx/html/bbs
# 编辑虚拟主机配置文件
vim /usr/local/nginx/conf/vhost/bbs.mhwy.com.conf
# --------------- 下面是配置文件内容 ---------------
server {
listen 80;
server_name bbs.mhwy.com;
#charset utf-8;
access_log logs/bbs.access.log main;
location / {
root html/bbs/;
index index.html index.htm index.php;
}
location ~ \.php$ {
root html/bbs/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
# 创建链接文件
ln -s /usr/local/nginx/sbin/nginx /usr/bin/
# 启动nginx
nginx
php 版本根据需求自行选择
wget -c https://www.php.net/distributions/php-7.4.15.tar.gz
yum -y install gd curl curl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel
# 解压文件
tar jvxf php-7.4.15.tar.bz2
# 切换工作目录
cd php-7.4.15
# 预编译
./configure --prefix=/usr/local/php \
--enable-fpm \
--enable-debug \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--enable-mbstring \
--with-curl \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-config-file-path=/usr/local/php/etc \
--with-zlib-dir
make && make install
# 复制 php 配置文件到安装目录中
cp php.ini-development /usr/local/php/etc/php.ini
# 复制 php-fpm 配置文件到安装目录中
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
# 复制启动脚本到系统启动目录
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# 启动脚本可执行权限
chmod +x /etc/init.d/php-fpm
# 修改 php-fpm 的用户为 nobody(选择性修改,源码默认就是 nobody )
# 如果上面 nginx 不修改这里就要修改为 nginx
vim /usr/local/php/etc/php-fpm.conf
user = nobody
group = nobody
# 启动php-fpm:
/etc/init.d/php-fpm start
mysql 版本根据需求自行选择,我这里选择的是 mysql 5.5.62
wget -c http://mirrors.163.com/mysql/Downloads/MySQL-5.5/mysql-5.5.62.tar.gz
yum install gcc ncurses-devel libaio bison gcc-c++ git cmake ncurses-devel ncurses -y
# 解压文件
tar zxvf mysql-5.5.62.tar.gz
# 切换工作目录
cd mysql-5.5.62
# 开始预编译
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql55/ \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_DATADIR=/data/mysql \
-DSYSCONFDIR=/usr/local/mysql55/ \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306 \
-DWITH_XTRADB_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EXTRA_CHARSETS=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_BIG_TABLES=1 \
-DWITH_DEBUG=0
make && make install
# 复制配置文件到安装目录
cp support-files/my-large.cnf /usr/local/mysql55/my.cnf
# 复制启动脚本到系统启动目录
cp support-files/mysql.server /etc/init.d/mysqld
# 设置启动脚本执行权限
chmod +x /etc/init.d/mysqld
# 创建数据存储目录
mkdir -p /data/mysql
# 添加 mysql 用户
useradd -rs /sbin/nologin mysql
# 修改启动数据目录的归属为 mysql 用户
chown -R mysql. /data/mysql
# 初始化 mysql
/usr/local/mysql55/scripts/mysql_install_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql55
ps:如果初始化失败,先检查命令是否错误,其次查看下 /etc/my.cnf 文件是否存在,要是存在的话,给改成别的名字。
/etc/init.d/mysqld start
#
启动数据库服务:
/etc/init.d/mysqld start
# 进入数据库创建数据库,并授权:
create database wordpress charset utf8;
grant all on wordpress.* to "wordpress"@localhost identified by "123456";
flush privileges;
我这里演示的是 Wordpress
wget -c https://cn.wordpress.org/latest-zh_CN.tar.gz
# 这里说下小技巧,如果不知道用 z 还是 j 那么就不指定,tar 会自动选择解压缩的方式
tar xf latest-zh_CN.tar.gz -C /usr/local/nginx/html
如果提示权限问题,对 html 目录设置属主为 nodoby ,简单粗暴不安全!
饿,后面懒得写了,就这样把!