建议先观看本人在B站录制的教程
地址如下
https://www.bilibili.com/video/BV1du411877A/?spm_id_from=333.999.list.card_archive.click&vd_source=b20cc82fb3dbf83a51270bfa6ce9f6a7
Nnginx
二进制安装
wget http://nginx.org/download/nginx-1.21.6.tar.gz
tar -zxvf nginx-1.21.6.tar.gz
yum install gcc
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
./configure --prefix=/usr/local/nginx --with-http_ssl_module
make && make install
cd /usr/local/nginx/logs/
touch nginx.pid
#用于存储 Nginx 进程的 PID(进程 ID)。在 Nginx 启动时,它会将自己的 PID 写入 nginx.pid 文件中,以便在需要停止 Nginx 时,可以通过读取该文件中的 PID,向该进程发送信号来停止 Nginx。如果在启动 Nginx 之前没有创建 nginx.pid 文件,那么在尝试停止 Nginx 时,可能会出现找不到 PID 文件的错误。因此,在启动 Nginx 之前创建一个空的 nginx.pid 文件是一个良好的习惯。
/usr/local/nginx/sbin/nginx
/usr/local/nginx/sbin/nginx -s reload
Yum源安装
sudo yum install yum-utils
vi /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
sudo yum-config-manager --enable nginx-mainline
sudo yum install nginx
Mariadb
[mariadb]
name = MariaDB
baseurl = https://mirrors.gigenet.com/mariadb/yum/10.6/centos7-amd64
gpgkey=https://mirrors.gigenet.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
yum makecache
yum mariadb mariadb-server
mysql
CREATE DATABASE wordpress;
CREATE USER 'wordpressuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpressuser'@'localhost';
FLUSH PRIVILEGES;
PHP
yum install -y epel-release
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum install yum-utils
yum makecache
yum-config-manager --enable remi-php74
yum install php php-fpm php-mcrypt php-cli php-gd php-curl php-mysql php-ldap php-zip php-fileinfo
php -v
systemctl restart php-fpm
测试
[root@web01 www]# vim /usr/share/nginx/html/www/test_php.php
<?php
phpinfo();
?>
WordPress
rm -rf /usr/local/nginx/html/*
mv wordpress /usr/local/nginx/html/
vi /usr/local/nginx/conf/nginx.conf
location / {
root /usr/local/nginx/html/wordpress;
index index.php index.html index.htm;
}
location ~ \.php$ {
root /usr/local/nginx/html/wordpress;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
cd /usr/local/nginx/html/wordpress/
cp wp-config-sample.php wp-config.php
vi wp-config.php
/**WordPress的数据库名称*/
define('DB_NAME','wp');
/**数据库用户名*/
define('DB_USER','root');
/**数据库密码*/
define('DB_PASSWORD','123456');
/**数据库主机名*/
define('DB_HOST','localhost');
/**用于创建数据库表的数据库字符集*/
define('DB_CHARSET','utf8');
/**数据库整理类型。如果有疑问,请不要更改*/
define('DB_COLLATE','');
如何大家想做https可以参考一下配置
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
#监听443端口
listen 443;
#你的域名
server_name huiblog.top;
ssl on;
#ssl证书的pem文件路径
ssl_certificate /root/card/huiblog.top.pem;
#ssl证书的key文件路径
ssl_certificate_key /root/card/huiblog.top.key;
location / {
proxy_pass http://公网地址:项目端口号;
}
}
server {
listen 80;
server_name huiblog.top;
#将请求转成https
rewrite ^(.*)$ https://$host$1 permanent;
}
}
Nginx编译安装模块解释
Http_ssl_module:支持 SSL/TLS 加密协议,用于安全传输数据。
Http_gzip_static_module:用于压缩静态文件,减少网络传输数据量。
Http_stub_status_module:提供 Nginx 服务器状态信息,包括活动连接数、请求数、处理时间等。
Http_realip_module:用于将代理服务器的真实 IP 地址传递给后端服务器,以便正确处理客户端 IP 地址。
Http_auth_request_module:支持通过子请求验证客户端身份,以便保护 Web 应用程序。
Http_geoip_module:用于根据客户端 IP 地址获取地理位置信息。
Http_sub_module:用于在响应中替换文本,例如替换链接或广告。
Http_secure_link_module:用于生成 URL 的安全签名,以防止 URL 被篡改。
Http_limit_conn_module:用于限制连接数,以避免过度连接导致服务器崩溃。
Http_limit_req_module:用于限制请求速率,以避免过度请求导致服务器崩溃。
评论区