ubuntu18.04下使用php+mysql+apache的网站搭建
如果我做错了什么,请让法律来制裁我,而不是让我用php写项目
最近在给社团网站做服务器迁移,遇到了一些问题,记录一下。
系统环境
- ubuntu18.04
安装|配置 MySQL
安装
使用 apt-get
安装
1 | sudo apt-get update |
配置
MySQL初始化安全脚本
1 | sudo mysql_secure_installation |
mysql_secure_installation
中会有设置root密码,删除匿名用户,禁止root远程登录,删除test数据库,刷新权限表等操作,可以全都选择yes。root密码看情况更改。
配置完成后,可以使用以下命令查看MySQL服务状态
1 | sudo systemctl status mysql.service |
会产生类似如下输出(此处的输出并非在配置结束后运行产生的,仅作参考)
1 | ● mysql.service - MySQL Community Server |
进入MySQL
1 | sudo mysql -u root -p |
创建新用户
1 | CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; |
给新用户并授权
1 | GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost' ; |
刷新权限表(一定要记得刷新)
1 | FLUSH PRIVILEGES; |
创建新数据库,给网站使用
1 | CREATE DATABASE newdatabase; |
使用新数据库
1 | USE newdatabase; |
退出MySQL
1 | exit |
安装|配置 php
安装
建议使用源码编译安装。
获取源码包
1 | curl -o php-7.4.33.tar.gz https://www.php.net/distributions/php-7.4.33.tar.gz |
配置安装内容
按需求配置安装内容,这里只是一个示例,具体安装内容可以参考官方文档。
1 | ./configure --prefix=/usr/local/php --sysconfdir=/etc/php --with-openssl --with-zlib --with-bz2 --with-curl --enable-bcmath --enable-gd --with-webp --with-jpeg --with-mhash --enable-mbstring --with-imap-ssl --with-mysqli=mysqlnd --enable-exif --with-ffi --with-zip --enable-sockets --with-pcre-jit --enable-fpm --enable-pdo --with-pdo-mysql=mysqlnd --with-mysql=mysqlnd --enable-pcnt |
mysqlnd是php提供的mysql驱动,是php5.3之后才有的。此处不选择mysql驱动之后会出错。
配置过程中可能会出现一些错误,根据错误提示安装相应的依赖即可。
编译安装
1 | make |
安装完成后执行以下命令
1 | sudo cp php.ini-development /etc/php/php.ini # 复制配置文件模板 |
然后执行以下命令,查看php版本
1 | php -v |
配置
修改php配置文件
1 | sudo vim /etc/php/php.ini |
添加pdo_mysql扩展
1 | extension=pdo ; 添加pdo扩展 |
修改完后退出保存,重启php-fpm
1 | sudo systemctl restart php-fpm |
安装|配置 apache
安装
使用 apt-get
安装
1 | sudo apt-get install apache2 |
安装完成后启动apache
1 | sudo systemctl start apache2 |
配置
修改apache配置文件
1 | sudo vim /etc/apache2/apache2.conf |
添加如下内容
1 | <Directory /var/www/html> |
修改完后退出保存,重启apache
1 | sudo systemctl restart apache2 |
执行以下命令,启动rewrite
模块
1 | sudo a2enmod rewrite |
在 /var/www/html
目录下创建 index.php
文件,输入以下内容
1 |
|
创建.htaccess
文件,输入以下内容
1 | <IfModule mod_rewrite.c> |
然后在浏览器中输入 http://localhost
,如果出现php信息页面,说明apache和php都安装成功了。可以用此页面查看php的配置信息。
随后即可在该路径下放置网页文件。
设置域名
在 /etc/apache2/sites-available
目录下创建 example.com.conf
文件,输入以下内容
1 | <VirtualHost *:80> |
- 标题: ubuntu18.04下使用php+mysql+apache的网站搭建
- 作者: null-qwerty
- 创建于 : 2023-10-12 14:46:48
- 更新于 : 2024-01-21 20:46:05
- 链接: https://www.null-qwerty.top/2023/10/12/ubuntu18-04下使用php-mysql-apache的网站搭建/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。