Ubuntu搭建apache2+mysql(mariadb)+php,apache2mariadb
以前一直都是使用xmapp套装用来网站开发,最近接触服务器环境,决定自己搭建一次环境。
sudo apt-get install apache2
按照提示输入管理员密码与y就可以自动安装了。
安装完毕后输入
sudo service apache2 status
查看apache2服务是否开启
如果未开启服务,可以用下面命令开启
sudo service apache2 start
sudo apt-get install php php-fpm
按照提示输入密码与y就可以安装好php代码
这样apache与php就安装好了,进入apache2根目录输入
cd /var/www/ //进入网站根目录
touch test.php //新增test.php文件
vi test.php //修改文件
然后点击i进入输入模式输入:
<?php
phpinfo();
?>
按键盘Est键后再输入
:wq
就可以保存(最好学习一下vi的用法,神器!)
在浏览器输入localhost或者127.0.0.1然而显示
<?php
;phpinfo();
?>
这是我犯的错误,因为还没有配置apache解析php代码
配置过程如下:
输入如下代码配置apache+php
sudo apt-get install libapache2-mod-php //配置apache+php
sudo service apache2 restart //重启apache服务
再次来浏览器打开,就能完整显示phpinfo的内容了
来源:如何在Ubuntu 14.04 LTS上安装MariaDB
安装MariaDB
sudo apt-get update //更新Ununtu仓库
sudo apt-get install mariadb-server //安装mariadb
sudo apt-get install mysql-server //安装mysql(与上一行选择一个执行)
在旧版本的MariaDB中,安装过程会让你输入密码,然而我的并没有让我输入,所以我们得手动配置。
来源:配置mariadb
- 设置root密码
sudo mysql_secure_installation
看着英语提示就可以了,一路y下去是推荐配置
注意:这里要用root账户才可以登录进入mysql。也就是说mysql_secure_installation是进入不了安全配置的
- 修改字符集
登录mysql服务
sudo mysql -u root -p
MariaDB> show variables like 'collation_%';
MariaDB> show variable like 'character_set_%';
把collationtion中不是utf8的都重置成utf8
MariaDB> set collation_database='utf8_general_ci';
MariaDB> set collation_server='utf8_general_ci';
看看是不是默认为utf8
MariaDB> show variables like 'collation_%';
MariaDB> show variables like 'character_set_%';
修改完毕mysql后刷新一下privileges
MariaDB> flush privileges;
MariaDB> quit; //退出mysql界面
到这里整个环境就搭配好了。
新手会碰到以下的几个问题:
<?php
$con = new mysqli("localhost","vast","yourpassword");
if(mysqli_connect_errno()){
echo mysqli_connent_error();
}else{
echo "连接数据库成功";
}
?>
用浏览器输入并打开127.0.0.1/index.php
结果在浏览器显示
Access denied for user 'root'@'localhost'
这是因为没有赋予root用户本地登录的权限,可以通过创建一个本地账户来解决这个问题或者赋予root账户本地登录权限,我就挑前者讲述。
进入mysql
sudo mysql -u root -p
创建一个叫vast并且可访问服务ip为%(即全部)的密码为yourpassword的用户,它还有赋予其他用户权限的权限.
MariaDB(none)> grant all privileges on `vast`.* to 'vast'@'%' identified by 'yourpassword' with grant option; //赋予权限
MariaDB(none)> flush privileges //刷新权限
MariaDB(none)> quit //退出mysql界面
在根目录写一个php连接数据库代码
刷新一次浏览器,显示数据库连接成功!