ubuntu安装php+mysql+apache2

ubuntu版本18+

一. 安装php

//php
apt install php7.2
//查看php扩展
php -m
//安装php扩展
sudo apt install php7.2-bcmath  php7.2-gd ......
//修改php.ini
/etc/php/7.2/cli/php.ini

//重启服务

二. 安装mysql

//大多数情况下ubuntu会自己自带最新版本mysql如需要修改版本
//首先删除mysql:
sudo apt-get remove mysql-*
//然后清理残留的数据 yes or no 选yes
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
//安装mysql指定版本
sudo apt install mysql-server-5.7
//查看安装版本
mysql -V
//查看mysql默认账号密码
sudo cat /etc/mysql/debian.cnf
//配置mysql
sudo mysql_secure_installation
//配置项较多如下所示
  a)为root用户设置密码 
  b)删除匿名账号 //建议删除
  c)取消root用户远程登录  //看需求
  d)删除test库和对test库的访问权限 //直接回车
  e)刷新授权表使修改生效 //直接回车
  d)......

//需要远程连接需要以下操作
//修改配置文件,注释掉bind-address = 127.0.0.1
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
//保存退出,然后进入mysql服务
mysql -uroot -p
执行授权命令:
mysql>grant all ON *.* to root@'%' identified by '123456' with grant option;
mysql> flush privileges;
mysql> exit

其中`<root@%>``localhost`就是本地访问,配置成`%`就是所有主机都可连接;第二个`'123456'`为你给用户设置的密码。

//重启数据库
sudo /etc/init.d/mysql restart

三. 安装php-fpm

//php
apt install php7.2-fpm
//修改配置监听9000端口来处理nginx的请求(这种方法一般在windows上使用),

另一种方法linux下使用sock方法速度会更快,这个地方也可以不修改,真使用里面  /run/php/php7.2-fpm.sock 这样的路径,后面nginx也要设置成这种格式  fastcgi_pass unix:/run/php/php7.2-fpm.sock;

打开 /etc/php/7.2/fpm/pool.d/www.conf 文件找到如下位置注释第一行添加第二行

;listen = /run/php/php7.2-fpm.sock
listen = 127.0.0.1:9000
修改权限

chmod 777 /run/php/php7.2-fpm.sock

$ sudo service php7.2-fpm start       # 启动
$ sudo service php7.2-fpm stop        # 停止
$ sudo service php7.2-fpm restart     # 重启
$ sudo service php7.2-fpm reload      # 重载

四. apache2

/etc/apache2/sites-available 中修改 000-default.conf 
中的DocumentRoot /var/www/ 修改为想要的目录
//在/etc/apache2/apache2.conf加上以下代码
<Directory 项目路径例如:/etc/www/web/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
//重启||开启||关闭服务
sudo  /etc/init.d/apache2 restart||start||stop
//开启https
//检查是否配置openssl
sudo a2enmod  ssl
//如是以下代码不则不需要安装开启openssl
`Considering dependency setenvif for ssl:`
`Module setenvif already enabled`
`Considering dependency mime for ssl:`
`Module mime already enabled`
`Considering dependency socache_shmcb for ssl:`
`Module socache_shmcb already enabled`
`Module ssl already enabled`
sudo apt-get install openssl 安装
sudo a2enmod ssl 开启ssl
//在/etc/apache2/ports.conf文件查看是否有443端口号。一般都会有。
//在/etc/apache2/sites-available/default-ssl.conf文件配置下面表格显示的这几项
`强制使用https`
//我们只需要打开/etc/apache2/sites-available/000-default.conf这个文件,在你的<VirtualHost*:80></VirtualHost>这个标签内随便一个地方加上三行:
RewriteEngine on
RewriteCond   %{HTTPS} !=on
RewriteRule   ^(.*)  https://%{SERVER_NAME}$1 [L,R]
//然后保存,然后启动 Apache2 的重定向:
 sudo a2enmod rewrite

//不管配不配443最后一步都是重启apache


配置文件参数 说明
SSLEngine on 启用 SSL 功能
SSLCertificateFile 证书文件
SSLCertificateKeyFile 私钥文件
SSLCertificateChainFile 证书链文件
ServerAdmin 邮箱
ServerName 域名
DocumentRoot 运行目录
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
1
粉丝
0
喜欢
1
收藏
0
排名:3560
访问:23
私信
所有博文
社区赞助商