当前位置: 首页 > news >正文

Linux运维新人自用笔记(用虚拟机Ubuntu部署lamp环境,搭建WordPress博客)

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

每天学习较为零散。

day20

一、./configure 脚本命令

./configure 是 Unix/Linux 系统中用于配置软件源代码的脚本命令,通常用于为后续的 make 和 make install 准备编译环境。

选项作用
--prefix=/path指定安装根目录(默认 /usr/local
--bindir=/path指定可执行文件目录
--libdir=/path指定库文件目录
--includedir=/path指定头文件目录
选项作用
--enable-feature启用特定功能
--disable-feature禁用特定功能
--with-package=/path指定依赖库路径
--without-package禁用某个依赖
选项作用
CC=gcc指定 C 编译器
CFLAGS="-O2 -g"设置编译标志
LDFLAGS="-L/path"设置链接库路径

二、Ubuntu桌面版连接ssh服务

Ubuntu22.04桌面版   

单击鼠标右键,选择open in terminal 打开终端

#编辑资源配置
vi /etc/apt/sources.listdeb https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiversedeb https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiversedeb https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse# deb https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiversedeb https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
#切换到root
sudo -i#下载远程连接服务
sudo apt install openssh-server#开启远程连接
sudo systemctl start ssh在xshell上登陆连接

 

三、Ubuntu系统编译安装apache

 apache官网

https://downloads.apache.org/httpd/
https://downloads.apache.org/apr/
#下载tar包
wget https://downloads.apache.org/httpd/httpd-2.4.63.tar.gztar -zxf httpd-2.4.63.tar.gz #运行配置脚本,缺少依赖
root@xun-virtual-machine:/a1/httpd-2.4.63# ./configure 
configure: error: APR not found.  Please read the documentation.#下载APR依赖
root@xun-virtual-machine:/a1# wget https://downloads.apache.org/apr/apr-1.7.6.tar.gz#系统缺少C编译器(如GCC),导致无法编译APR(Apache Portable Runtime)库
root@xun-virtual-machine:/a1/apr-1.7.6# ./configure 
configure: error: in '/a1/apr-1.7.6':
configure: error: no acceptable C compiler found in $PATH#安装编译器
root@xun-virtual-machine:/a1/apr-1.7.6# sudo apt install build-essential#运行配置脚本,缺少依赖
root@xun-virtual-machine:/a1/apr-1.7.6# ./configure
config.status: executing libtool commands
rm: cannot remove 'libtoolT': No such file or directory
config.status: executing default commands#安装依赖
root@xun-virtual-machine:/a1/apr-1.7.6# sudo apt install libtool autoconf automake#APR相关依赖安装完毕
root@xun-virtual-machine:/a1/apr-1.7.6# ./configure

#继续下载apache服务,缺少APR-util
root@xun-virtual-machine:/a1# cd httpd-2.4.63/
root@xun-virtual-machine:/a1/httpd-2.4.63# ./configure 
checking for APR-util... no
configure: error: APR-util not found.  Please read the documentation.#下载tar包
wget https://downloads.apache.org/apr/apr-util-1.6.3.tar.gz
tar -zxf apr-util-1.6.3.tar.gz #确保APR已正确安装到系统目录(如/usr/local/apr)
ls /usr/local/apr/bin/apr-1-config#在配置apr-util时,必须通过--with-apr参数指定APR的安装路径
#此命令明确告知apr-util从/usr/local/apr目录中查找APR的头文件和库
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr#在apr-util目录下运行配置脚本,指定依赖库路径
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util#安装依赖
sudo apt install libpcre3-dev #在httpd-2.4.63目录下运行配置脚本,指定依赖库路径
root@xun-virtual-machine:/a1/httpd-2.4.63# ./configure   --prefix=/usr/local/apache2   --with-apr=/usr/local/apr   --with-apr-util=/usr/local/apr-util   --with-pcre=/usr/bin/pcre-config  #安装sudo make install
#启动服务
root@xun-virtual-machine:/a1/httpd-2.4.63# sudo /usr/local/apache2/bin/apachectl startAH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
httpd (pid 61419) already running这个警告是因为缺少全局 ServerName 配置:sudo vim /usr/local/apache2/conf/httpd.conf
找到或添加:ServerName localhost:80保存后重新加载配置:
root@xun-virtual-machine:/a1/httpd-2.4.63# sudo /usr/local/apache2/bin/apachectl graceful#再次启动服务
root@xun-virtual-machine:/a1/httpd-2.4.63# sudo /usr/local/apache2/bin/apachectl start
httpd (pid 61419) already running

#创建Systemd服务
sudo vim /etc/systemd/system/httpd.service[Unit]
Description=Apache HTTP Server
After=network.target[Service]
Type=forking
ExecStart=/usr/local/apache2/bin/apachectl start
ExecStop=/usr/local/apache2/bin/apachectl stop
ExecReload=/usr/local/apache2/bin/apachectl graceful
PIDFile=/usr/local/apache2/logs/httpd.pid
PrivateTmp=true[Install]
WantedBy=multi-user.targetroot@xun-virtual-machine:/a1/httpd-2.4.63# sudo systemctl start httpd
root@xun-virtual-machine:/a1/httpd-2.4.63# sudo systemctl status  httpd
● httpd.service - Apache HTTP ServerLoaded: loaded (/etc/systemd/system/httpd.service; disabled; vendor preset: enabled)Active: active (running) since Tue 2025-06-17 23:20:15 CST; 1min 8s agoProcess: 61799 ExecStart=/usr/local/apache2/bin/apachectl start (code=exited, status=0/SUCCESS)Main PID: 61419 (httpd)Tasks: 0 (limit: 4545)Memory: 4.0KCPU: 11msCGroup: /system.slice/httpd.service‣ 61419 /usr/local/apache2/bin/httpd -k start6月 17 23:20:15 xun-virtual-machine systemd[1]: Starting Apache HTTP Server...
6月 17 23:20:15 xun-virtual-machine apachectl[61802]: httpd (pid 61419) already running
6月 17 23:20:15 xun-virtual-machine systemd[1]: Started Apache HTTP Server.
#下载net工具
apt install net-tools#查看端口
sudo netstat -tulnp | grep apache
tcp6       0      0 :::8088                 :::*                    LISTEN      2521/apache2          #关闭防火墙
root@xun-virtual-machine:/a1# iptables -Froot@xun-virtual-machine:/a1# curl -I 127.0.0.1:8088
HTTP/1.1 200 OK
Date: Thu, 19 Jun 2025 05:10:34 GMT
Server: Apache/2.4.52 (Ubuntu)
Last-Modified: Wed, 18 Jun 2025 13:05:23 GMT
ETag: "29af-637d8482a80e5"
Accept-Ranges: bytes
Content-Length: 10671
Vary: Accept-Encoding
Content-Type: text/html
网页访问http://ip:8088Apache2 Default Page
It works!
This is the default welcome page used to test the correct operation of the Apache2 server after installation on Ubuntu systems. It is based on the equivalent page on Debian, from which the Ubuntu Apache packaging is derived. If you can read this page, it means that the Apache HTTP server installed at this site is working properly. You should replace this file (located at /var/www/html/index.html) before continuing to operate your HTTP server.

四、配置mysql仓库

下载mysql

#交互界面选mysql8.0和ok即可
root@xun-virtual-machine:/a1/b1# wget https://dev.mysql.com/get/mysql-apt-config_0.8.34-1_all.deb#更新(注意服务器时间是否和网络时间一致)
apt update#检查可安装的 MySQL 
root@xun-virtual-machine:/a1/b1# apt-cache policy mysql-server
mysql-server:Installed: (none)Candidate: 8.0.42-0ubuntu0.22.04.1Version table:8.0.42-0ubuntu0.22.04.1 500500 https://mirrors.aliyun.com/ubuntu jammy-security/main amd64 Packages500 https://mirrors.aliyun.com/ubuntu jammy-security/main i386 Packages500 https://mirrors.aliyun.com/ubuntu jammy-updates/main amd64 Packages500 https://mirrors.aliyun.com/ubuntu jammy-updates/main i386 Packages8.0.35-1ubuntu23.04 500500 http://repo.mysql.com/apt/ubuntu lunar/mysql-8.0 amd64 Packages8.0.28-0ubuntu4 500500 https://mirrors.aliyun.com/ubuntu jammy/main amd64 Packages500 https://mirrors.aliyun.com/ubuntu jammy/main i386 Packages#安装 MySQL 客户端和服务端​
apt install mysql-client
apt install mysql-server#验证安装的 MySQL 包​
root@xun-virtual-machine:/a1/b1# dpkg -l |grep mysql
ii  mysql-apt-config                           0.8.34-1                                all          Auto configuration for MySQL APT Repo.
ii  mysql-client                               8.0.42-0ubuntu0.22.04.1                 all          MySQL database client (metapackage depending on the latest version)
ii  mysql-client-8.0                           8.0.42-0ubuntu0.22.04.1                 amd64        MySQL database client binaries
ii  mysql-client-core-8.0                      8.0.42-0ubuntu0.22.04.1                 amd64        MySQL database core client binaries
ii  mysql-common                               5.8+1.0.8                               all          MySQL database common files, e.g. /etc/mysql/my.cnf
rc  mysql-community-server                     8.0.0-dmr-1ubuntu14.04                  amd64        MySQL Server
ii  mysql-server                               8.0.42-0ubuntu0.22.04.1                 all          MySQL database server (metapackage depending on the latest version)
ii  mysql-server-8.0                           8.0.42-0ubuntu0.22.04.1                 amd64        MySQL database server binaries and system database setup
ii  mysql-server-core-8.0                      8.0.42-0ubuntu0.22.04.1                 amd64#启动mysql服务
systemctl start mysql#安全配置
root@xun-virtual-machine:/a1/b1# sudo mysql_secure_installation
选择密码验证组件​​
Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No: y选择密码强度级别​​
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1后续配置​​
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] N
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y#登录 MySQL​
root@xun-virtual-machine:/a1/b1# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.42-0ubuntu0.22.04.1 (Ubuntu)Copyright (c) 2000, 2025, Oracle and/or its affiliates.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> CREATE DATABASE wordpress;
Query OK, 1 row affected (0.01 sec)mysql> CREATE USER 'wordpressuser'@'localhost' IDENTIFIED BY 'zxcvbn';
Query OK, 0 rows affected (0.01 sec)mysql> GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpressuser'@'localhost';
Query OK, 0 rows affected (0.01 sec)mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)mysql> EXIT;
Bye

五、下载php

#下载解压
root@xun-virtual-machine:/a1/php# wget https://www.php.net/distributions/php-8.1.32.tar.gz
tar -zxf php-8.1.32.tar.gz apt-get install libcurl4-openssl-dev libonig-dev libzip-dev libgd-dev libfreetype6-dev libjpeg-dev libpng-dev libxml2-dev libssl-dev pkg-config#检查安装配置环境
./configure \--prefix=/usr/local/php \--with-config-file-path=/usr/local/etc \--with-config-file-scan-dir=/usr/local/etc/php.d \--with-apxs2=/usr/local/apache2/bin/apxs \--enable-fpm \--with-mysqli=mysqlnd \--with-pdo-mysql=mysqlnd \--with-zlib \--with-curl \--with-zip \--with-gd \--with-freetype \--with-jpeg \--with-webp \--with-xpm \--enable-sockets \--enable-soap \--enable-opcache \--enable-mbstring \--enable-mbregex \--enable-pcntl \--enable-shmop \--enable-sysvmsg \--enable-sysvsem \--enable-sysvshm \--enable-calendar \--enable-bcmath \--enable-maintainer-zts+--------------------------------------------------------------------+
| License:                                                           |
| This software is subject to the PHP License, available in this     |
| distribution in the file LICENSE. By continuing this installation  |
| process, you are bound by the terms of this license agreement.     |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point.                            |
+--------------------------------------------------------------------+Thank you for using PHP.

root@xun-virtual-machine:/a1/php/php-8.1.32# cd /var/www/html/#将apache的html文件改名
root@xun-virtual-machine:/var/www/html# ll
total 24
drwxr-xr-x 2 root root  4096  6月 19 13:56 ./
drwxr-xr-x 3 root root  4096  6月 18 21:05 ../
-rw-r--r-- 1 root root 10671  6月 19 13:30 index.html_s
-rw-r--r-- 1 root root    21  6月 19 13:30 index.phproot@xun-virtual-machine:/var/www/html# cat index.php 
<?phpphpinfo();
?>#访问网站
PHP Version 8.1.2-1ubuntu2.21
System	Linux xun-virtual-machine 6.8.0-60-generic #63~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Apr 22 19:00:15 UTC 2 x86_64
Build Date	Mar 24 2025 19:04:23
Build System	Linux
Server API	Apache 2.0 Handler
Virtual Directory Support	disabled
Configuration File (php.ini) Path	/etc/php/8.1/apache2
Loaded Configuration File	(none)
Scan this dir for additional .ini files	/etc/php/8.1/apache2/conf.d
#将zip下载到:/var/www/html,解压
wget https://wordpress.org/latest.zip#将wordpress/* 移动到 当前/var/www/html目录下
root@xun-virtual-machine:/var/www/html# mv wordpress/* .
root@xun-virtual-machine:/var/www/html# ll
total 28140
drwxr-xr-x  6 root root     4096  6月 19 14:45 ./
drwxr-xr-x  3 root root     4096  6月 18 21:05 ../
-rw-r--r--  1 root root    10671  6月 19 13:30 index.html_s
-rw-r--r--  1 root root      405  2月  6  2020 index.php
-rw-r--r--  1 root root 28551696  5月  1 00:48 latest.zip
-rw-r--r--  1 root root    19903  3月  6 14:24 license.txt
-rw-r--r--  1 root root     7425  3月  7 08:45 readme.html
drwxr-xr-x  2 root root     4096  6月 19 14:45 wordpress/
-rw-r--r--  1 root root     7387  2月 13  2024 wp-activate.php
drwxr-xr-x  9 root root     4096  4月 30 16:41 wp-admin/
-rw-r--r--  1 root root      351  2月  6  2020 wp-blog-header.php
-rw-r--r--  1 root root     2323  6月 14  2023 wp-comments-post.php
-rw-r--r--  1 root root     3336 10月 15  2024 wp-config-sample.php
drwxr-xr-x  4 root root     4096  4月 14 23:37 wp-content/
-rw-r--r--  1 root root     5617  8月  2  2024 wp-cron.php
drwxr-xr-x 30 root root    12288  4月 30 16:41 wp-includes/
-rw-r--r--  1 root root     2502 11月 26  2022 wp-links-opml.php
-rw-r--r--  1 root root     3937  3月 11  2024 wp-load.php
-rw-r--r--  1 root root    51414  2月  3 16:55 wp-login.php
-rw-r--r--  1 root root     8727  2月  8 16:00 wp-mail.php
-rw-r--r--  1 root root    30081  3月  4 13:06 wp-settings.php
-rw-r--r--  1 root root    34516  3月 10 18:16 wp-signup.php
-rw-r--r--  1 root root     5102 10月 18  2024 wp-trackback.php
-rw-r--r--  1 root root     3205 11月  8  2024 xmlrpc.php

六、搭建 WordPress论坛

您的 PHP 安装似乎缺少 WordPress 所需的 MySQL 扩展。请检查 PHP 扩展是否已安装并启用。mysqli如果您不确定这些条款的含义,您应该联系您的房东。如果您仍需要帮助,可以随时访问 WordPress 支持论坛。root@xun-virtual-machine:/var/www/html# apt install php-mysqli -y#将文件移动到 Apache 根目录:
sudo mv wordpress /var/www/html/
sudo chown -R www-data:www-data /var/www/html/wordpress
sudo chmod -R 755 /var/www/html/wordpress#配置 Apache 虚拟主机
#创建配置文件:
sudo vim /etc/apache2/sites-available/wordpress.conf<VirtualHost *:80>ServerAdmin admin@example.comDocumentRoot /var/www/html/wordpressServerName 你的域名或IP<Directory /var/www/html/wordpress>AllowOverride All</Directory>ErrorLog ${APACHE_LOG_DIR}/error.logCustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>#启用配置并重载 Apache:
sudo a2ensite wordpress.conf
sudo a2enmod rewrite
sudo systemctl restart apache2完成 WordPress 安装
浏览器访问 http://你的域名或IP。按提示选择语言,填写数据库信息:数据库名: wordpress用户名: wordpressuser密码: 你设置的密码主机: localhost表前缀: 默认 wp_(可修改)运行安装,设置站点标题、管理员账号和密码。

相关文章:

  • 微信小程序使用rsa 加解密
  • Ubuntu Server设置locale
  • 6.19_JAVA_微服务
  • 主成分分析(PCA)例题——给定协方差矩阵
  • naive-ui-2.28.3 离线文档
  • Oracle 数据库性能优化之重做日志(redo)
  • MySQL基础函数
  • [Data Pipeline] Airflow DAG | 数据质量检查PyDeequ
  • Linux 并发编程:从线程池到单例模式的深度实践
  • android 省市区联动选择
  • Kafka性能调优全攻略:从JVM参数到系统优化
  • Angular--Hello(TODO)
  • 基于C#的Baumer相机二次开发教程
  • 主流防火墙策略绕过漏洞的修复方案与加固实践
  • 宽度优先遍历(bfs)(2)——fllodfill算法
  • QLoRA (Quantized Low-Rank Adaptation)浅析
  • 火山引擎项亮:机器学习与智能推荐平台多云部署解决方案正式发布
  • 0_1排序与搜索
  • 【unitrix】 3.2 位取反运算(not.rs)
  • 【音视频】PJSIP库——示例简介、C++类说明
  • 培训网站源码wordpress/制作电商网站
  • 云南省昆明市做网站的公司/优化设计官方电子版
  • 多肉建设网站的目的及功能定位/互联网营销怎么赚钱
  • 做网站上传空间什么意思/关键词推广软件
  • wordpress文件上传/武汉seo服务
  • 给金融的做网站 犯法吗/寻找客户资源的网站