ubuntu 阿里云 nginx php升级

本文详细介绍了如何将服务器上的PHP版本从5.5升级到7.2,以满足Moodle等现代教育平台的需求。步骤包括删除旧版本、添加新的软件源、安装PHP 7.2及必要的扩展包,如mysql、fpm、curl、dom等,并重启fpm服务及更新Nginx配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

搭了个hustoj,一直想再搭个moodle,趁着国庆放假,把php升级成7.2,moodle要求7.0以上
 

php -v     //查看版本
sudo apt-get --purge remove php5.5*      //删除旧版本

sudo add-apt-repository ppa:ondrej/php    //添加源
sudo apt-get update         //更新源
sudo apt-get install php7.2     //安装
php -v     //查看版本
sudo apt-get install php7.2-mysql        //安装2个扩展包
sudo apt-get install php7.2-fpm

//选择安装扩展包
sudo apt-get install php7.2-curl php7.2-dom php7.2-gd php7.2-mbstring php7.2-memcached php7.2-zip

sudo service php7.2-fpm restart  //启动fpm服务

更新gninx配置文件

 

https://laravelacademy.org/post/7943.html

Ubuntu 系统的阿里云服务器上搭建动态网站,可以通过 LAMP(Linux、Apache、MySQL、PHP)或 LEMP(Linux、Nginx、MySQL、PHP)栈实现。以下是详细的部署方法。 ### 3.1 LAMP 栈部署动态网站 LAMP 是一种广泛使用的 Web 开发平台,适合运行基于 PHP 的动态网站。在 Ubuntu 系统中,可以通过以下命令安装 Apache、MySQL 和 PHP: ```bash sudo apt update sudo apt install apache2 mysql-server php php-mysql ``` 安装完成后,需配置 MySQL 数据库并创建用于网站的数据库和用户。随后,将 PHP 文件放置在 `/var/www/html` 目录下,即可通过 Apache 提供动态内容服务[^4]。 ### 3.2 LEMP 栈部署动态网站 LEMP 栈与 LAMP 类似,但使用 Nginx 替代 Apache,提供更高的性能和并发处理能力。在 Ubuntu 上安装 Nginx、MySQL 和 PHP-FPM 的步骤如下: ```bash sudo apt update sudo apt install nginx mysql-server php-fpm php-mysql ``` 配置 Nginx 虚拟主机时,需在 `/etc/nginx/sites-available` 中创建配置文件,并设置 `root` 指向网站根目录。同时,确保启用 `index.php` 作为默认索引文件,并正确配置 PHP 处理模块: ```nginx server { listen 80; server_name example.com; root /var/www/html; index index.php index.html; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php-fpm.sock; } } ``` 完成配置后,重启 NginxPHP-FPM 服务: ```bash sudo systemctl restart nginx sudo systemctl restart php7.4-fpm ``` ### 3.3 安全加固建议 在部署完成后,需对服务器进行安全加固,以防止潜在的攻击风险。建议采取以下措施: - **系统层面**:关闭不必要的服务,定期更新系统补丁,配置防火墙(如 UFW)限制访问端口。 - **Web 服务器层面**:在 Nginx 或 Apache 中禁用服务器签名,限制上传文件类型,设置访问控制。 - **数据库层面**:使用强密码策略,限制远程访问,定期备份数据库。 - **PHP 层面**:禁用 `allow_url_include`,限制 `open_basedir`,开启 `display_errors` 仅用于调试环境。 ### 3.4 部署 Laravel 等框架的注意事项 若使用 Laravel 等基于 PHP 的现代框架,需确保服务器满足其最低要求。例如,Laravel 需要 PHP 7.3 或更高版本,并依赖于 `fileinfo`、`opcache` 和 `exif` 等扩展。安装完成后,可使用 `php artisan serve` 启动开发服务器,或将其部署到 Nginx/Apache 上运行[^2]。 此外,Laravel 的 `.env` 文件需配置数据库连接信息,以确保能正常访问 MySQL 数据库。可通过以下命令生成密钥并配置: ```bash php artisan key:generate ``` ### 3.5 使用 Docker 部署数据库服务 对于希望快速部署数据库服务的用户,可考虑使用 Docker 容器化 MySQL。例如,使用 `docker run` 命令创建 MySQL 容器: ```bash docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:latest ``` 该命令创建一个名为 `mysql-container` 的 MySQL 容器,并设置 root 用户的密码。随后可通过端口映射或容器链接方式将其与 Web 应用集成[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值