第一步:更新系统
拿到Ubuntu22.04后,更新所有的包,包含内核。我这里直接是Root登录的,如果不是root登录的,所有命令前加sudo。
apt update:更新本地包列表 ,让系统知道哪些软件包有最新的版本
apt upgrade:更新所有已安装的软件包到最新版本,注意不是该软件的最新版本,而是在比如22.04版本下该软件的最新怎么,比如nginx,目前最新版本是1.26,但用upgrade更新后,只到1.18版本。
apt update
apt upgrade -y
第二步:安装 nginx
apt install nginx
第三步:安装PHP
先设置PHP的apt源,再更新安装包,再安装PHP版本,最后启动PHP。我这里最终安装的版本是8.2.27版本。
#安装PHP源
apt install software-properties-common #解决没有这个add-apt-repository命令
add-apt-repository ppa:ondrej/php
#更新软件包
apt update
apt upgrade
#安装PHP8.2
apt install php8.2 php8.2-fpm php8.2-common php8.2-mbstring php8.2-xml php8.2-zip php8.2-opcache php8.2-mcrypt php8.2-cli php8.2-gd php8.2-curl php8.2-mysql php8.2-redis php8.2-bcmath php8.2-bz2 php8.2-sqlite3
#启动PHP8.2
systemctl start php8.2-fpm
#若安装PHP7.4,刚把8.2更换为7.4即可。
第四步:安装Mysql
ubuntu22.04,默认安装的mysql是8.0,我这小版本是41版,即mysql8.0.41。
#安装mysql
apt install mysql-server
#修改Mysql的监听地址
sed -i /bind-address = 127.0.0.1/bind-address = 0.0.0.0/g /etc/mysql/mysql.conf.d/mysqld.cnf
#启动Mysql
systemctl start mysql.service
# 创建远程管理用户并授权
mysql -uroot -p
CREATE USER 'LghManager'@'%' IDENTIFIED WITH mysql_native_password BY "HnLgh@10086";
GRANT ALL PRIVILEGES ON *.* TO 'LghManager'@'%' ;
flush privileges;
第五步:设置虚拟主机配置文件
cat >/etc/nginx/conf.d/www.hnnews.com.conf
server {
listen 80;
server_name www.hnnews.com;
root /data/www;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.html index.htm index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
# error_page 404 /index.php;
location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
#重启nginx
systemctl restart nginx
第六步:建业务库并授权
create database lghtest001 charset=utf8mb4 collate utf8mb4_general_ci;
CREATE USER 'lghtest'@'%' IDENTIFIED BY 'Lghtest@123321';
GRANT ALL PRIVILEGES ON lghtest001.* TO 'lghtest'@'%';
flush privileges;
第七步:怎么查nginx/php/mysql版本
# nginx -V
nginx version: nginx/1.18.0 (Ubuntu)
built with OpenSSL 3.0.2 15 Mar 2022
# php -v
PHP 8.2.27 (cli) (built: Jan 2 2025 15:36:15) (NTS)
Copyright (c) The PHP Group
mysql> select version();
+-------------------------+
| version() |
+-------------------------+
| 8.0.41-0ubuntu0.22.04.1 |
+-------------------------+
1 row in set (0.00 sec)
mysql> exit
声明:欢迎大家光临本站,学习IT运维技术,转载本站内容,请注明内容出处”来源刘国华教育“。如若本站内容侵犯了原著者的合法权益,请联系我们进行处理。