之前在Ubuntu 20.04中搭建过,现在换了新操作系统,顺便整理一下。
相关文章
- 《Ubuntu 20.04.1 LTS搭建nginx + php7.4运行环境》
https://blog.csdn.net/lxyoucan/article/details/144850572 - 《linux nginx maccms管理后台无法进入页面不存在和验证码不显示的问题》
https://blog.csdn.net/lxyoucan/article/details/144856801
环境准备
安装 Nginx
默认情况下,最新版本的 Nginx 位于 Ubuntu 20.04 默认存储库中。您可以使用以下命令安装它:
apt-get install nginx -y
安装 Nginx 后,启动 Nginx 服务,并通过以下命令使其在系统重启时启动:
systemctl start nginx
systemctl enable nginx
您还可以使用以下命令验证已安装的 Nginx 版本:
nginx -v
您应该得到以下输出:
nginx version: nginx/1.24.0 (Ubuntu)
安装mysql
我这里是使用docker安装的,其他方式可以自行网上搜索。
安装docker
为了方便后面安装mysql和redis我们先来安装一下docker。
首先我们先安装一下docker,详情的帮助见:
《Install Docker Engine on Ubuntu》
https://docs.docker.com/engine/install/ubuntu/
mysql安装
这里我们就来安装一个5.7版本的吧。
docker安装mysql5.7
#下载镜像
docker pull mysql:5.7.37
#创建mysql实例
docker run --name maccms-mysql -p 3306:3306 -e MYSQL\_ROOT\_PASSWORD=maccms123456 -d mysql:5.7.37
连接mysql数据库测试
下面我们来测试一下数据库连接是否正常。
docker run -it --rm mysql:5.7.37 mysql --port=3306 -h172.17.0.1 -uroot -pmaccms123456
创建数据库
我的设置如下,请自行修改成自己的。这里先建好,后面会用到。
- 数据库
maccms
- 用户名
maccms
- 密码
macms@pwd
-- 创建数据库
CREATE DATABASE maccms;
-- 创建用户并设置密码
CREATE USER 'maccms'@'%' IDENTIFIED BY 'macms@pwd';
-- 授予用户所有权限
GRANT ALL PRIVILEGES ON maccms.* TO 'maccms'@'%';
-- 刷新权限
FLUSH PRIVILEGES;
安装 php7.4
Ubuntu 20.04中默认就有php7.4,直接就可以安装。Ubuntu 24.04.1中就无法直接安装了。
apt-get install php7.4
安装会提示:E: 软件包 php7.4 没有可安装候选
增加源
sudo add-apt-repository ppa:ondrej/php
sudo apt update
安装 php7.4
sudo apt install php7.4
停用apache(可选)
安装完以后,默认会安装了apache2.service,会与nginx端口冲突。我这里把它停止掉并停止开机启动。
# 停止
systemctl stop apache2.service
# 不允许开机启动
systemctl disable apache2.service
当然喜欢使用apache的小伙伴可以保留。
安装 PHP7.4-FPM 和其他扩展
PHP7.4-FPM 是一个非常重要的PHP组件,它在现代Web应用程序中扮演着关键角色。
什么是PHP-FPM?
- FPM 是 FastCGI Process Manager 的缩写。
- FastCGI 是一种协议,它允许Web服务器(如Nginx、Apache)与PHP解释器进行通信。
- PHP-FPM 是一种实现了FastCGI协议的PHP进程管理器,它负责管理PHP进程的生命周期,并提供了一些额外的功能,如动态调整进程数、监控进程状态等。
您可以通过运行以下命令来安装 PHP7.4-FPM 和其他必要的扩展:
apt-get install php7.4-fpm php7.4-cli php7.4-mysql php7.4-curl php7.4-json php7.4-mbstring php7.4-zip php7.4-gd -y
- php7.4-mbstring 不安装,macmcs会报错
- php7.4-zip如果不安装,maccms安装自检无法过
- php7.4-gd 不安装后台登录会没有验证码
安装maccms
下载
可以从https://github.com/magicblack/maccms10中下载。
我下载的是v2024.1000.4046
版本的。
解压程序目录
我把上面下载的程序解压到了如下目录:
/var/www/maccms10
并设置目录的权限,不然会报权限的错误
sudo chown -R www-data:www-data /var/www/maccms10
sudo chmod -R 755 /var/www/maccms10
配置nginx
其中www.demo.com修改成自己的域名。
server {
listen 80;
server_name www.demo.com;
root /var/www/maccms10;
location / {
index index.php index.html error/index.html;
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^/admin.php(.*)$ /admin.php?s=$1 last;
rewrite ^/api.php(.*)$ /api.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
autoindex off;
}
location ~ \.php(.*)$ {
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
}
配置完成以后,可以重启nginx使配置生效。
systemctl restart nginx
maccms安装向导
此时访问你的域名可以看到安装配置的界面了,比如:访问www.demo.com。界面如下:
同意协议并安装系统
运行环境检测
如果以上步骤都是跟我一样的话,应该是全部检验通过了。如果有不通过的单独解决一下即可。
这里点击进行下一步。
数据库与管理员设置【关键】
在这里设置我们上面的创建的数据库,用户名,和密码。我这里是
- 数据库
maccms
- 用户名
maccms
- 密码
macms@pwd
设置完成后,点击“立即执行安装”即可。
修改管理后台的地址
正常情况下,会提示
然后会自动跳转到以下界面 。
只要把admin.php重命名就可以了。这里我修改成bugaosuni.php
这里请修改成你自己能记得的,别人猜不到的就行了。
mv /var/www/maccms10/admin.php /var/www/maccms10/bugaosuni.php
进入管理后台
然后访问http://你的域名/bugaosuni.php
就可以进行管理后台。
- 这里如果您遇到了验证码不显示的问题,请检查
php7.4-gd
是否安装了。
apt-get install php7.4-gd -y
- 如果报页面不存在,而且还是用nginx配置的话,要检查一下nginx配置是否正确。特别是这里:
location ~ \.php(.*)$ {
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
这两点坑我可以花了好几个小时才搞定的,写出来帮助那些需要的人。
升级脚本
第1次进来可以要升级一下脚本,点一下即可。
至此我们就安装配置完成了。
其他
默认是不带有模板的,需要模板的可以自行网上找找。我也忘记我的模板在哪下载的,我是在github中找到的一个。
系统=>网站参数=>网站模板、手机模板
设置一下就可以了。