Linux运维新人自用笔记(部署 LAMP:Linux + Apache + MySQL + PHP、部署discuz论坛)

发布于:2025-06-21 ⋅ 阅读:(17) ⋅ 点赞:(0)

内容全为个人理解和自查资料梳理,欢迎各位大神指点!

每天学习较为零散。

day19

简单搭建网站

下载apache服务

#下载阿帕奇服务
[root@xun ~]# yum install httpd -y

#关闭防火墙
[root@xun ~]# iptables -F

#启动服务
[root@xun ~]# systemctl start httpd

#验证服务和端口
[root@xun ~]# netstat -tunlp |grep httpd
tcp6       0      0 :::80                   :::*                    LISTEN      2515/httpd          
[root@xun ~]# curl -I 127.0.0.1:80
HTTP/1.1 403 Forbidden
Date: Sun, 15 Jun 2025 14:40:40 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 16 Oct 2014 13:20:58 GMT
ETag: "1321-5058a1e728280"
Accept-Ranges: bytes
Content-Length: 4897
Content-Type: text/html; charset=UTF-8

#查看自己服务器的公网ip
[root@xun ~]# curl ifconfig.me
xxx.72.xxx.90

#设置开机自启
[root@xun ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

#查看用户访问日志
[root@xun ~]# tail -f /var/log/httpd/access_log 

下载mysql数据库 

下载mysql

#启动服务
[root@xun yum.repos.d]# systemctl start mysqld
[root@xun yum.repos.d]# systemctl status mysqld
● mysqld.service - MySQL Community Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2025-06-15 23:15:43 CST; 3s ago
  Process: 7264 ExecStartPost=/usr/bin/mysql-systemd-start post (code=exited, status=0/SUCCESS)

#mysql的安全设置
[root@xun yum.repos.d]# mysql_secure_installation



NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, 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): 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
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 MySQL
root user without the proper authorisation.

You already have a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] y
New password: 
Re-enter new password: 
Sorry, passwords do not match.

New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL 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] y
 ... 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] n
 ... skipping.

By default, MySQL 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] y
 - Dropping test database...
ERROR 1008 (HY000) at line 1: Can't drop database 'test'; database doesn't exist
 ... Failed!  Not critical, keep moving...
 - 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] y
 ... Success!




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

Thanks for using MySQL!


Cleaning up...

#登陆mysql
[root@xun yum.repos.d]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 26
Server version: 5.6.51 MySQL Community Server (GPL)

Copyright (c) 2000, 2021, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.


mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)

mysql> EXIT
Bye
[root@xun yum.repos.d]# 

下载php 

# 启用 remi 仓库(提供更新的 PHP 版本)
 yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm

# 启用 PHP 7.4
 yum-config-manager --enable remi-php74

# 安装 PHP
 yum install -y php

#查询apache的rpm文件列出包中的文件
[root@xun /]# rpm -ql httpd |grep html

#将php代码放在阿帕奇网页下
[root@xun /]# cd /var/www/html/

[root@xun html]# cat index.php 
<?php
 phpinfo();
?>

#在网页访问
PHP 版本 7.4.33
系统	Linux xun 3.10.0-1160.el7.x86_64 #1 SMP 2020 年 10 月 19 日星期一 16:18:59 UTC x86_64
构建日期	6月 5, 2024 05:05:14
构建系统	Red Hat Enterprise Linux Server 版本 7.9 (Maipo)
生成提供程序	Remi 的 RPM 存储库<https://rpms.remirepo.net/> #StandWithUkraine
服务器 API	Apache 2.0 处理程序
虚拟目录支持	禁用
配置文件 (php.ini) 路径	/等
加载的配置文件	/etc/php.ini
扫描此目录以获取其他 .ini 文件	/etc/php.d 中
解析的其他 .ini 文件	/etc/php.d/20-bz2.ini 中, /etc/php.d/20-calendar.ini 中, /etc/php.d/20-ctype.ini 中, /etc/php.d/20-curl.ini 中, /etc/php.d/20-exif.ini 中、 /etc/php.d/20-fileinfo.ini 中, /etc/php.d/20-ftp.ini 中、 /etc/php.d/20-gettext.ini 中, /etc/php.d/20-iconv.ini 中、 /etc/php.d/20-json.ini 中、 /etc/php.d/20-phar.ini 中, /etc/php.d/20-sockets.ini 中, /etc/php.d/20-sodium.ini 中、 /etc/php.d/20-tokenizer.ini
PHP 应用程序接口	20190902
PHP 扩展	20190902
Zend 扩展	320190902
Zend 扩展构建	API320190902,NTS
PHP 扩展构建	API20190902,NTS
调试版本	不
线程安全	禁用
Zend 信号处理	启用
Zend 内存管理器	启用
Zend 多字节支持	禁用
IPv6 支持	启用
DTrace 支持	可用、禁用
已注册的 PHP 流	https, ftps, compress.zlib, php, 文件, glob, 数据, http, ftp, compress.bzip2, phar
已注册的流套接字传输	TCP、UDP、UNIX、UDG、SSL、SSLv3、TLS、TLSv1.0、TLSv1.1、TLSv1.2
已注册的流过滤器	zlib.*、string.rot13、string.toupper、string.tolower、string.strip_tags、convert.*、consumed、dechunk、bzip2.*、convert.iconv.*

 在discuz官网下载Discuz! X3.5版本

#在discuz官网下载Discuz! X3.5版本,在/var/www/html目录下解压缩
unzip Discuz_X3.5_SC_UTF8_20250205.zip 


#将upload/目录下所有文件转移到 /var/www/html/ 中
mv upload/* /var/www/html/

[root@xun html]# ll
total 11564
-rw-r--r--  1 root root     2869 Feb  5 20:44 admin.php
drwxr-xr-x 10 root root     4096 Feb  5 20:44 api
-rw-r--r--  1 root root      727 Feb  5 20:44 api.php
drwxr-xr-x  2 root root     4096 Feb  5 20:44 archiver
drwxr-xr-x  2 root root     4096 Feb  5 20:44 config
-rw-r--r--  1 root root     1040 Feb  5 20:44 connect.php
-rw-r--r--  1 root root      106 Feb  5 20:44 crossdomain.xml
drwxr-xr-x 12 root root     4096 Feb  5 20:44 data
-rw-r--r--  1 root root 11596436 Jun 16 13:32 Discuz_X3.5_SC_UTF8_20250205.zip
-rw-r--r--  1 root root     5558 Feb  5 20:41 favicon.ico
-rw-r--r--  1 root root     2357 Feb  5 20:44 forum.php
-rw-r--r--  1 root root      906 Feb  5 20:44 group.php
-rw-r--r--  1 root root     1325 Feb  5 20:44 home.php
-rw-r--r--  1 root root     6920 Feb  5 20:44 index.php
drwxr-xr-x  5 root root     4096 Feb  5 20:44 install
-rw-r--r--  1 root root     8181 Feb  5 20:41 LICENSE
-rw-r--r--  1 root root      998 Feb  5 20:44 member.php
-rw-r--r--  1 root root     2410 Feb  5 20:44 misc.php
-rw-r--r--  1 root root     1790 Feb  5 20:44 plugin.php
-rw-r--r--  1 root root     1086 Feb  5 20:44 portal.php
-rw-r--r--  1 root root    33294 Dec 21  2022 qqqun.png
drwxr-xr-x  2 root root     4096 Feb  5 20:44 readme
-rw-r--r--  1 root root    70226 Mar 16  2023 readme.html
-rw-r--r--  1 root root      639 Feb  5 20:44 robots.txt
-rw-r--r--  1 root root     1755 Feb  5 20:44 search.php
drwxr-xr-x 10 root root     4096 Feb  5 20:44 source
drwxr-xr-x  7 root root     4096 Feb  5 20:44 static
drwxr-xr-x  3 root root     4096 Feb  5 20:44 template
drwxr-xr-x  8 root root     4096 Feb  5 20:44 uc_client
drwxr-xr-x 13 root root     4096 Feb  5 20:44 uc_server
drwxr-xr-x  2 root root     4096 Jun 16 13:33 upload
-rw-r--r--  1 root root      140 Feb 12  2023 utility.html

 将/var/www/html/ 中的目录文件权限设置为777

 chmod -R 777 ./*

 Discuz在服务器配置安装时出现xml_parser_create()不支持

# 下载 libxslt RPM 包(阿里云镜像)
wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/libxslt-1.1.28-6.el7.x86_64.rpm

# 安装(强制忽略依赖)
sudo rpm -ivh --nodeps libxslt-1.1.28-6.el7.x86_64.rpm

# 确保 remi-php74 仓库已启用
sudo yum-config-manager --enable remi-php74

# 安装 php-xml
sudo yum install -y php-xml --enablerepo=remi-php74

# 检查 PHP 模块
php -m | grep xml

# 测试 PHP 是否能解析 XML
php -r "new SimpleXMLElement('<test></test>'); echo 'OK';"

最后重启
systemctl restart httpd


刷新网络界面即可

最初因 libxslt 依赖缺失导致 php-xml 安装失败
通过手动安装 libxslt RPM 包或编译安装解决问题

Discuz在服务器配置安装时出现mysqli_connect()不支持

#下载驱动
[root@xun html]# yum install php-mysqli -y
#重启apache
[root@xun html]# systemctl restart httpd

部署完成
http://117.72.204.90/


网站公告

今日签到

点亮在社区的每一天
去签到