1.项目实战:LAMP-LNMP-分离部署

LAMP/LNMP 最佳实践

LAMP/LNMP 组件

LAMPL inux+A pache+M ysql/M ariadb+P HP/P ython/Perl。

LNMPL inux+N ginx+M ysql/M ariadb+P HP/P ython/Perl。

  • Linux:操作系统,提供程序运行基础。
  • A pache/Nginx:Web 服务器,提供网页访问。
  • M ysql/Mariadb:数据库,提供数据管理。
  • P HP/P ython/Perl:脚本语言,提供动态执行生成。

PHP FastCGI 进程管理器,是PHP的一个扩展模块,用于管理PHP 进程池的软件,用于接受web服务器的请求。PHP-FPM 全名 PHP FastCGI Process Manager,作为FastCGI进程管理器,与Web服务器(例如Nginx、Apache等)配合使用。

PHP-FPM的主要功能是管理和调度PHP脚本的执行。它通过创建和管理PHP进程池来处理PHP请求。每个PHP进程池中运行多个PHP-FPM进程,每个进程可以处理一个或多个PHP请求。PHP-FPM会根据配置的参数来管理这些进程的数量、生命周期和资源分配。

PHP-FPM提供了一些高级功能,例如进程池的动态调整、请求限制和超时控制、进程重生、日志记录等。它还支持基于Unix域套接字或TCP/IP套接字的进程间通信,以及基于文件和共享内存的进程管理。

LAMP/LNMP 工作原理

  1. 客户端通过HTTP协议请求web服务器资源

  2. web 服务器根据资源类型进行处理:

    • 静态资源:web直接把资源返回至客户端。

    • 动态资源:通过指定的通讯方式将脚本网页交给后端程序执行。如果运算期间需要连接mysql数据库,则通过mysql连接器连接mysql。后端程序将运算结果返回给web服务。

  3. web服务将结果返回给客户端。

PHP 与 WEB 协同工作模式

PHP 与 WEB 协同工作模式:

  1. CGI:Web 进程动态调用相应脚本解释器执行动态页面 ,执行完后再释放。特点:性能差。
  2. Modules:Web 进程动态加载相应模块执行动态页面 。特点:性能较好。
  3. FastCGI:后端进程独立运行管理,通过独立的网络套接字接口接收Web进程传过来的请求。特点:真正地实现前后端分离。适合于性能要求比较高的场景。Web 服务器需要开启反向代理功能,将请求转发到后端服务器。

ALL-IN-ONE

以部署 wordpress 应用为例。

实验环境

主机名 IP 地址 角色
wordpress.lzh.cloud 10.1.8.10 all

以部署 wordpress 应用为例。

部署数据库

bash 复制代码
[root@server ~ 09:03:24]# hostnamectl set-hostname wordpress.lzh.cloud
bash 复制代码
# 安装服务端
[root@wordpress ~]# yum install -y mariadb-server

# 启用并启动服务
[root@wordpress ~]# systemctl enable --now mariadb

# 配置防火墙
[root@wordpress ~]# firewall-cmd --permanent --add-service=mysql
[root@wordpress ~]# firewall-cmd --reload

# 加固 MariaDB
[root@wordpress ~]# mysql_secure_installation
# 交互式提示您进行更改,包括: 
# - 为root帐户设置密码,例如123。 
# - 禁止root帐户从本地主机外部访问数据库。
# - 删除匿名用户帐户。
# - 删除用于演示的test数据库。 
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n]    
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] 
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] 
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] 
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] 
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

准备数据库

bash 复制代码
[root@wordpress ~]# mysql -uroot -p
mysql> CREATE DATABASE wordpress;
mysql> CREATE USER wordpress@'%' identified by '123';
mysql> GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'%';
mysql> FLUSH PRIVILEGES;
mysql> exit

部署 Nginx 服务

bash 复制代码
[root@wordpress ~]# yum install -y nginx
[root@wordpress ~]# systemctl enable nginx --now
[root@wordpress ~]# echo 'Hello World !' > /usr/share/nginx/html/index.html
[root@wordpress ~]# curl 10.1.8.10
Hello World !

部署 PHP 服务

bash 复制代码
[root@wordpress ~]# yum install -y php php-fpm php-mysqlnd
[root@wordpress ~]# systemctl enable php-fpm.service --now

# php-fpm 进程默认以 apache 用户身份运行,修改运行用户为 nginx,并重启服务
[root@wordpress ~]# vim /etc/php-fpm.d/www.conf
user=nginx
group=nginx
[root@wordpress ~]# systemctl restart php-fpm --now

配置 Nginx 对接 PHP

bash 复制代码
# 配置nginx对接php,新增配置文件
[root@wordpress ~]# vim /etc/nginx/default.d/php.conf
location ~ \.php$ {
    try_files $uri =404;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}
# 配置web服务器默认主页
[root@wordpress ~ 09:13:51]# vim /etc/nginx/nginx.conf
......
# 在nginx主配置文件 server 块 root 参数下配置index参数
    server {
        ......
        root         /usr/share/nginx/html;
        # 指定主页
        index index.php index.html;
......
[root@wordpress ~ 09:11:03]# systemctl restart nginx.service 
准备 php 测试文件并测试
bash 复制代码
# 准备 index.php测试文件
[root@wordpress ~ 09:13:34]# cat > /usr/share/nginx/html/index.php <<EOF
<?php
  echo "<h1>Hello World !</h1>\n";
?>
EOF

[root@wordpress ~ 09:13:49]# curl http://10.1.8.10/
<h1>Hello World !</h1>

# 准备 test-mysql.php
[root@wordpress ~ 09:19:39]# cat > /usr/share/nginx/html/test-mysql.php <<'EOF'
<?php
  $link=mysqli_connect('10.1.8.10','wordpress','123');
  if($link)
    echo "<h1>Connect Mysql Success !</h1>\n";
  else
    echo "<h1>Connect Mysql Failed !</h1>\n";
  $link->close();
?>
EOF

[root@wordpress ~ 09:21:48]# curl http://10.1.8.10/test-mysql.php
<h1>Connect Mysql Success !</h1>

# 准备 info.php
[root@wordpress ~]# cat > /usr/share/nginx/html/info.php <<EOF
<?php
  phpinfo()
?>
EOF

[root@wordpress ~ 10:00:55]# curl http://10.1.8.10/info.php
......
</table><br />
</div></body></html>
浏览器测试

部署 wordpress 应用

D:\桌面\课堂笔记\1.云计算\08.Linux项目实战-centos7\08.Linux项目实战-centos7\1.项目实战:LAMP-LNMP-分离部署.images

下载 wordpress,上传到家目录。

bash 复制代码
# 如果 Web 服务是 Nginx,则解压文件到/usr/share/nginx/html
[root@wordpress ~ 09:22:51]# pwd
/root
[root@wordpress ~ 09:22:54]# ls wordpress-4.9.4-zh_CN.zip 
wordpress-4.9.4-zh_CN.zip
[root@wordpress ~ 09:22:55]# unzip wordpress-4.9.4-zh_CN.zip
[root@wordpress ~ 09:23:21]# ls -d wordpress
wordpress
[root@wordpress ~ 09:23:25]# mv wordpress /usr/share/nginx/html/
[root@wordpress ~ 09:24:02]# chown -R nginx:nginx /usr/share/nginx/html/

在Windows端配置域名解析

C:\Windows\System32\drivers\etc\hosts

bash 复制代码
# windows客户端修改C:\Windows\System32\drivers\etc\hosts
# Linux或Unix修改 /etc/hosts
# 添加如下记录
10.1.8.10 blog.lzh.cloud

客户端配置 wordpress.lzh.cloud 名称解析。访问http://blog.lzh.cloud/wordpress/。

如果是nginx服务,则单击提交后,会出现如下提示:

根据提示创建文件,然后单击现在安装

后续步骤省略。

Standalone

以部署 wordpress 应用为例。

实验环境

主机名 IP 地址 角色
www.lzh.cloud 10.1.8.21 apache
php.lzh.cloud 10.1.8.22 php
db.lzh.cloud 10.1.8.23 mariadb
nfs.lzh.cloud 10.1.8.24 nfs

所有节点关闭防火墙和SELinux。

预配置

所有节点配置名称解析:

bash 复制代码
[root@all-node ~ ]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

10.1.8.21 www.lzh.cloud www
10.1.8.22 php.lzh.cloud php
10.1.8.23 db.lzh.cloud db
10.1.8.24 nfs.lzh.cloud nfs

C:\Windows\System32\drivers\etc\hosts

bash 复制代码
#项目LNMP-分离部署Standalone
10.1.8.21 www.lzh.cloud www
10.1.8.22 php.lzh.cloud php
10.1.8.23 db.lzh.cloud db
10.1.8.24 nfs.lzh.cloud nfs

独立部署 wordpress

初始化设置主机名和IP地址

bash 复制代码
# NFS 服务器
[root@centos7 ~ 10:33:02]# cat >> /etc/hosts <<EOF

######## wordpress ###########
10.1.8.21 www.lzh.cloud www
10.1.8.22 php.lzh.cloud php
10.1.8.23 db.lzh.cloud db
10.1.8.24 nfs.lzh.cloud nfs
EOF

[root@centos7 ~ 10:33:02]# hostnamectl set-hostname nfs.lzh.cloud

[root@centos7 ~ 10:33:02]# nmcli connection modify ens32 ipv4.addresses 10.1.8.24/24

[root@centos7 ~ 10:33:02]# nmcli connection up ens32 

# DB 服务器
[root@centos7 ~ 10:33:02]# cat >> /etc/hosts <<EOF

######## wordpress ###########
10.1.8.21 www.lzh.cloud www
10.1.8.22 php.lzh.cloud php
10.1.8.23 db.lzh.cloud db
10.1.8.24 nfs.lzh.cloud nfs
EOF

[root@centos7 ~ 10:33:02]# hostnamectl set-hostname db.lzh.cloud

[root@centos7 ~ 10:33:02]# nmcli connection modify ens32 ipv4.addresses 10.1.8.23/24

[root@centos7 ~ 10:33:02]# nmcli connection up ens32 

# php 服务器
[root@centos7 ~ 10:33:02]# cat >> /etc/hosts <<EOF

######## wordpress ###########
10.1.8.21 www.lzh.cloud www
10.1.8.22 php.lzh.cloud php
10.1.8.23 db.lzh.cloud db
10.1.8.24 nfs.lzh.cloud nfs
EOF

[root@centos7 ~ 10:33:02]# hostnamectl set-hostname php.lzh.cloud

[root@centos7 ~ 10:33:02]# nmcli connection modify ens32 ipv4.addresses 10.1.8.22/24

[root@centos7 ~ 10:33:02]# nmcli connection up ens32 

# www 服务器
[root@centos7 ~ 10:33:02]# cat >> /etc/hosts <<EOF

######## wordpress ###########
10.1.8.21 www.lzh.cloud www
10.1.8.22 php.lzh.cloud php
10.1.8.23 db.lzh.cloud db
10.1.8.24 nfs.lzh.cloud nfs
EOF

[root@centos7 ~ 10:33:02]# hostnamectl set-hostname www.lzh.cloud

[root@centos7 ~ 10:33:02]# nmcli connection modify ens32 ipv4.addresses 10.1.8.21/24

[root@centos7 ~ 10:33:02]# nmcli connection up ens32 

部署 nfs 服务器

由于静态文件和动态文件没有分开,所以 Web 服务器和 PHP 服务器都要存一份。实验环境通过NFS共享提供wordpress应用。

D:\桌面\课堂笔记\1.云计算\08.Linux项目实战-centos7\08.Linux项目实战-centos7\1.项目实战:LAMP-LNMP-分离部署.images

下载 wordpress,上传到家目录。

bash 复制代码
[root@nfs ~]# yum install -y nfs-utils
[root@nfs ~]# mkdir /www
[root@nfs ~]# echo '/www 10.1.8.0/24(rw)' > /etc/exports
[root@nfs ~]# systemctl enable nfs-server.service --now

# 准备 wordpress资源
[root@nfs ~]# unzip -o wordpress-4.9.4-zh_CN.zip -d /www/

# 准备网页测试文件
[root@nfs ~]# echo 'Hello /www/index.html !' > /www/index.html

[root@nfs ~]# cat > /www/index.php <<EOF
<?php
  echo "<h1>Hello /www/index.php !</h1>\n";
?>
EOF

[root@nfs ~]# cat > /www/test-mysql.php <<'EOF'
<?php
  $link=mysqli_connect('db.lzh.cloud','wordpress','123');
  if($link)
    echo "<h1>Connect Mysql Success !</h1>\n";
  else
    echo "<h1>Connect Mysql Failed !</h1>\n";
  $link->close();
?>
EOF

[root@nfs ~]# cat > /www/info.php <<EOF
<?php
  phpinfo();
?>
EOF

# 通过查询www服务器,获知nginx账户信息
[root@nfs ~ ]# yum install -y nginx

[root@www ~ ]# grep nginx /etc/passwd
nginx:x:998:996:Nginx web server:/var/lib/nginx:/sbin/nologin

[root@nfs ~ ]# chown -R 998 /www

部署 db 服务器

bash 复制代码
[root@db ~]# yum install -y mariadb-server
[root@db ~]# systemctl enable mariadb --now

# 加固 MariaDB
[root@blog ~]# mysql_secure_installation
# 交互式提示您进行更改,包括: 
# - 为root帐户设置密码,例如123。 
# - 禁止root帐户从本地主机外部访问数据库。
# - 删除匿名用户帐户。
# - 删除用于演示的test数据库。 

# 准备wordpress数据库和用户
[root@db ~]# mysql -uroot -p123
mysql> CREATE DATABASE wordpress;
mysql> CREATE USER wordpress@'%' identified by '123';
mysql> GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'%';
mysql> FLUSH PRIVILEGES;
mysql> exit

部署 Nginx 服务器

bash 复制代码
# 部署 Nginx 服务
[root@www ~]# yum install -y nginx
[root@www ~]# systemctl enable nginx --now

# 安装 nfs 工具
[root@www ~]# yum install -y nfs-utils

# 挂载存储
[root@www ~]# echo 'nfs.lzh.cloud:/www /usr/share/nginx/html nfs defaults 0 0' >> /etc/fstab 
[root@www ~]# mount /usr/share/nginx/html/
[root@www ~]# df -h /usr/share/nginx/html/
Filesystem            Size  Used Avail Use% Mounted on
nfs.lzh.cloud:/www   64G  3.2G   61G   5% /usr/share/nginx/html
[root@www ~]# ls /usr/share/nginx/html/
index.html  index.php  info.php  test-mysql.php  wordpress

部署 PHP 服务器

部署 php 服务

bash 复制代码
[root@php ~]# echo 'nginx:x:998:996:Nginx web server:/var/lib/nginx:/sbin/nologin' >> /etc/passwd
[root@php ~]# groupadd -g 996 nginx

[root@php ~]# yum install -y php php-fpm php-mysqlnd
[root@php ~]# vim /etc/php-fpm.d/www.conf
bash 复制代码
#使用;号注释掉原有listen行
;listen = 127.0.0.1:9000
# 新增listen 监听所有ip的9000端口
listen = 9000
# 支持监听特定ip的9000端口,例如listen = 10.1.8.22:9000

# 使用;号注释掉原有 listen.allowed_clients 行
# 允许所有客户端访问
;listen.allowed_clients = 127.0.0.1

# 设置运行用户
user = nginx
group = nginx

[root@php ~]# systemctl enable php-fpm.service --now

挂载存储

bash 复制代码
# 安装 nfs 工具
[root@php ~]# yum install -y nfs-utils

# 挂载存储
[root@php ~]# echo 'nfs.lzh.cloud:/www /www nfs defaults 0 0' >> /etc/fstab 
[root@php ~]# mkdir /www
[root@php ~]# mount /www
[root@php ~]# df -h /www
Filesystem            Size  Used Avail Use% Mounted on
nfs.lzh.cloud:/www   64G  3.2G   61G   5% /www
[root@php ~]# ls /www
index.html  index.php  info.php  test-mysql.php  wordpress

php 程序测试

bash 复制代码
[root@php ~]# php /www/index.php
<h1>Hello World !</h1>

[root@php ~]# php /www/test-mysql.php
<h1>Connect Mysql Success !</h1>

# 执行 info.php 的输出内容太多,这里省略。

配置 Nginx 对接 PHP

bash 复制代码
[root@www ~]# cat > /etc/nginx/conf.d/vhost-www.conf <<'EOF'
server {
    listen 80;
    server_name www.lzh.cloud;

    # 静态资源处理
    location / {
        root /usr/share/nginx/html;
        index index.html index.htm index.php;
    }

    # PHP 请求处理
    location ~ \.php$ {
        # 配置 PHP-FPM 监听的地址和端口
        fastcgi_pass php.lzh.cloud:9000;
        fastcgi_index index.php;
        # 配置 php 服务器上 wordpress 应用所在位置
        fastcgi_param SCRIPT_FILENAME /www/$fastcgi_script_name;
        include fastcgi_params;
    }
}
EOF

# 重启服务
[root@www ~]# systemctl restart nginx

测试应用

客户端配置 www.lzh.cloud 名称解析。访问http://www.lzh.cloud/wordpress/。

其他问题

配置网站连接数据库的时候,如果出现如下界面,则表明nginx没有权限修改网站主目录。

处理方法1:
bash 复制代码
# 更改拥有者为nginx对应的uid
[root@nfs ~]# chown -R 997 /www

# php-fpm 进程默认以 apache 用户身份运行,修改运行用户为 nginx,并重启服务
[root@php ~]# useradd -u 997 -s /sbin/nologin nginx
[root@php ~]# vim /etc/php-fpm.d/www.conf
user=nginx
group=nginx
[root@php ~]# systemctl restart php-fpm

配置完成后,单击现在安装,继续。后续步骤省略。

处理方法2:

根据提示:在存储节点创建配置文件。

bash 复制代码
[root@nfs ~]# vim /www/wordpress/wp-config.php
php 复制代码
<?php
/**
 * WordPress基础配置文件。
 *
 * 这个文件被安装程序用于自动生成wp-config.php配置文件,
 * 您可以不使用网站,您需要手动复制这个文件,
 * 并重命名为"wordpress-config.php",然后填入相关信息。
 *
 * 本文件包含以下配置选项:
 *
 * * MySQL设置
 * * 密钥
 * * 数据库表名前缀
 * * ABSPATH
 *
 * @link https://codex.wordpress.org/zh-cn:%E7%BC%96%E8%BE%91_wp-config.php
 *
 * @package WordPress
 */

// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wordpress');

/** MySQL数据库用户名 */
define('DB_USER', 'wordpress');

/** MySQL数据库密码 */
define('DB_PASSWORD', 'lzh@123');

/** MySQL主机 */
define('DB_HOST', 'db.lzh.cloud');

/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8mb4');

/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');

/**#@+
 * 身份认证密钥与盐。
 *
 * 修改为任意独一无二的字串!
 * 或者直接访问{@link https://api.wordpress.org/secret-key/1.1/salt/
 * WordPress.org密钥生成服务}
 * 任何修改都会导致所有cookies失效,所有用户将必须重新登录。
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         '7yZqc1!YY*8Um(;hw#Cu@&C<oRt|(Qjd!exg|n=#>(&/v|1(:=-E?KB;AGUVy&7.');
define('SECURE_AUTH_KEY',  '{sdmX?Io3}r8 km:r{g/uigwrcWPWO+7740kuiXMzYR&Nu7kQlt8s@7y.-#X_2Xt');
define('LOGGED_IN_KEY',    'uk^ s?-9K5xyNPT8nXI$t)$K6vb71qP[}[pZvk^::WN &%GO;*702MmI(U#TFgH+');
define('NONCE_KEY',        'zLA^fMij!?X +#vs+G` nGf6gel<a*QNhYL[5$}91nkif7ylJMAiqxotzgZ]/{:x');
define('AUTH_SALT',        '-%_ji|zC-:#7dJZ7W6+@XZvJ^Ij,I%^R69K]kZobmWi{6.+w8Sw!u]~;FJ-d+?a)');
define('SECURE_AUTH_SALT', '?r*#JoJ}Xy~kSXEzWRZI;a3MBMd*RDbx<KQI@T4e?8 pKE~08c=Q(I_<Sd.OZ}lk');
define('LOGGED_IN_SALT',   ')u7KKy1$#82.ZY8#^X99=#Vgzaw>g!>_f-_3LFoOM^Wi8+N@R`x`re$bJQA1;2^I');
define('NONCE_SALT',       '<_HUy#}dPUtcJ0$fsq/>N(Ds53rEV6)?VEtSm,Djs7]L6]3;Q}2Xov|VL/P;`Fg$');

/**#@-*/

/**
 * WordPress数据表前缀。
 *
 * 如果您有在同一数据库内安装多个WordPress的需求,请为每个WordPress设置
 * 不同的数据表前缀。前缀名只能为数字、字母加下划线。
 */
$table_prefix  = 'wp_';

/**
 * 开发者专用:WordPress调试模式。
 *
 * 将这个值改为true,WordPress将显示所有用于开发的提示。
 * 强烈建议插件开发者在开发环境中启用WP_DEBUG。
 *
 * 要获取其他能用于调试的信息,请访问Codex。
 *
 * @link https://codex.wordpress.org/Debugging_in_WordPress
 */
define('WP_DEBUG', false);

/**
 * zh_CN本地化设置:启用ICP备案号显示
 *
 * 可在设置→常规中修改。
 * 如需禁用,请移除或注释掉本行。
 */
define('WP_ZH_CN_ICP_NUM', true);

/* 好了!请不要再继续编辑。请保存本文件。使用愉快! */

/** WordPress目录的绝对路径。 */
if ( !defined('ABSPATH') )
	define('ABSPATH', dirname(__FILE__) . '/');

/** 设置WordPress变量和包含文件。 */
require_once(ABSPATH . 'wp-settings.php');

配置完成后,单击现在安装 ,继续。后续步骤省略。

s53rEV6)?VEtSm,Djs7]L6]3;Q}2Xov|VL/P;`Fg$');

/**#@-*/

/**

  • WordPress数据表前缀。
  • 如果您有在同一数据库内安装多个WordPress的需求,请为每个WordPress设置
  • 不同的数据表前缀。前缀名只能为数字、字母加下划线。
    */
    $table_prefix = 'wp_';

/**

  • 开发者专用:WordPress调试模式。
  • 将这个值改为true,WordPress将显示所有用于开发的提示。
  • 强烈建议插件开发者在开发环境中启用WP_DEBUG。
  • 要获取其他能用于调试的信息,请访问Codex。
  • @link https://codex.wordpress.org/Debugging_in_WordPress
    */
    define('WP_DEBUG', false);

/**

  • zh_CN本地化设置:启用ICP备案号显示
  • 可在设置→常规中修改。
  • 如需禁用,请移除或注释掉本行。
    */
    define('WP_ZH_CN_ICP_NUM', true);

/* 好了!请不要再继续编辑。请保存本文件。使用愉快! */

/** WordPress目录的绝对路径。 */

if ( !defined('ABSPATH') )

define('ABSPATH', dirname(FILE) . '/');

/** 设置WordPress变量和包含文件。 */

require_once(ABSPATH . 'wp-settings.php');

复制代码
配置完成后,单击**现在安装**,继续。后续步骤省略。
相关推荐
稚辉君.MCA_P8_Java2 小时前
DeepSeek 插入排序
linux·后端·算法·架构·排序算法
郝学胜-神的一滴4 小时前
Linux命名管道:创建与原理详解
linux·运维·服务器·开发语言·c++·程序人生·个人开发
宾有为4 小时前
【Linux】Linux 常用指令
linux·服务器·ssh
wdfk_prog4 小时前
[Linux]学习笔记系列 -- [block]bio
linux·笔记·学习
2501_941623324 小时前
C++高性能网络服务器与epoll实战分享:大规模并发连接处理与事件驱动优化经验
开发语言·php
口嗨农民工4 小时前
3.2 mysql客户端和服务器的启动与停止
数据库·mysql
ajassi20004 小时前
开源 Linux 服务器与中间件(十三)FRP服务器、客户端安装和测试
linux·服务器·开源
熊文豪5 小时前
工业物联网时序数据库选型指南:Apache IoTDB 的技术优势与应用实践
物联网·apache·时序数据库·iotdb
XH-hui5 小时前
【打靶日记】群内靶机vm1
linux·网络安全
t***31655 小时前
Docker 之mysql从头开始——Docker下mysql安装、启动、配置、进入容器执行(查询)sql
sql·mysql·docker