Ubuntu16.04 配置apache php mysql 的各种坑

先说几句:

  1. 如果可以换centos吧,Ubuntu下安装这些的路径,配置文件名称都和其他linxu系统不一致,很难找
  2. Ubuntu只提供PHP7
  3. 请不要安装PHP7
  4. 请不要安装PHP7
  5. 请不要安装PHP7
  6. 如果读者非要安装PHP7,请退出笔者的博客吧

Apache2

1
apt-get install apache2

这个没什么好说的,配置文件在/etc/apache2/apache2.conf下,配置文件不需要修改外网可以访问,可以用localhost和IP访问试试。apache默认位置在/var/www/html/下。apache的重启命令为(印象中是这个,如果错了网上百度一下吧,并请给笔者留个言,谢谢):

1
sudo /etc/init.d/apache2 restart

请记住服务器80端口一定要打开!服务器80端口一定要打开!服务器80端口一定要打开!

PHP5.6

请不要装PHP7,因为安装PHP7之后会遇到各种坑,反正笔者是没有能全部填上,如果有兴趣读者可以去填着试试,如果成功了请给笔者留言,谢谢。如果已经安装了PHP7请先卸载:

1
2
3
sudo dpkg -l | grep php| awk '{print $2}' |tr "\n" " "
sudo apt-get install aptitude
sudo aptitude purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`

卸载后添加 PPA:

1
sudo add-apt-repository ppa:ondrej/php

执行安装命令:

1
2
sudo apt-get update
sudo apt-get install php5.6

中途遇到什么选择,要么Y、要么确认、要么OK。之后安装扩展:

1
2
sudo apt-get install php5.6-gd
sudo apt-get install php5.6-mysql

重启apache后可以在apache路径下新建phpinfo.php:

1
2
3
<?php
echo phpinfo();
?>

打开浏览器输入localhost/phpinfo.php就能看到是否安装成功。php配置路径一般在/etc/php/5.6/apache2/php.ini,保险去查看phpinfo页面的信息。

MySQL5.6

记住安装MySQL时一定要设置密码,一定要设置密码,一定要设置密码:

1
sudo apt install mysql-server php5.6-mysql root root0x0

如果忘记了怎么办,反正网上的修改方法笔者没有尝试成功,读者可以去试,笔者的方法是新添加一个用户。去/etc/mysql/debian.cnf查找默认用户[user]及[password]:

1
mysql -u user -p

输入密码后创建新用户、设置密码并授权:

1
2
CREATE USER 'newuser'@'host' IDENTIFIED BY 'newpassword';
GRANT privileges ON databasename.tablename TO 'newuser'@'host' ;

然后:

1
2
USE user;
UPDATE user SET host='%' where user='newuser';

打开/etc/mysql/my.conf修改:

1
bind-address=0.0.0.0

exit退出后重启MySQL:

1
sudo service mysql restart

如果还不行的话就试试网上说的safe_mysqld,添加skip-name-resolve等方法吧

请记住服务器3306端口一定要打开!服务器3306端口一定要打开!服务器3306端口一定要打开!

其他

windows下安装可以直接下载LAMP,WAMP,XAMPP都可以

上传文件大小限制修改php.ini的upload_max_filesize和post_max_size(搜索方式为 “/search content”),然后重启apache),并且上传文件要把项目赋予777权限(什么是777上网百度吧):

1
sudo chmod -R 777 projectDir

不到万不得已不要重装MySQL

查看端口是否打开(以3306为例,以下显示为打开):

1
2
netstat -apn|grep 3306
tcp6 0 0 127.0.0.1:3306 :::* LISTEN 13524/mysqld

window下python的MySQLdb笔者没有找到pip或者esay_install的办法,VC++9.0的环境笔者也差不多有了,最后是网上下载直接安装的,安装后在脚本里import就可以了。

Linxu下安装python的MySQLdb:

1
2
3
sudo apt-get install libmysqlclient-dev
sudo apt-get install python-dev
sudo pip install mysql-python

希望这篇文章能帮大家填完所有的坑