/ 中存储网

Ubuntu系统安装配置Apache+MySQL+PHP+phpMyAdmin服务器环境

2014-07-13 15:37:41 来源:中存储网

一,安装apache,php,phpmyadmin,mysql

apt-get install apache2 libapache2-mod-php5 php5
php5-gd  php5-mysql phpmyadmin


安装phpmyadmin的时候,会弹出个对话框,让你选择apache的类型,这里装的是apache2选择apache2就行了。在这里我为什么没有用apt-get来安装mysql呢,因为报错,如下


下列的软件包有不能满足的依赖关系:
mysql-server-5.0: 依赖: libdbi-perl 但是它将不会被安装
依赖: mysql-client-5.0 (>= 5.0.51a-3ubuntu5.8) 但是它将不会被安装
E: 无法安装的软件包

依赖包libdbi-perl找不到,我又安装libdbi-perl,又提示我,依赖:
perlapi-5.8.4找不到,我又安装perlapi包,提示我找不到perlapi安装包,我想是不是源里面没有,我换了好几个下载源都不行。没办法自己编辑源码来安装mysql了。

下载地址:
target="_self">http://dev.mysql.com/downloads/

tar zxvf mysql-5.5.2-m2.tar.gz
cd mysql-5.5.2-m2
./configure --prefix=/usr/local/mysql      //在这里我没有指定用户安装默认是mysql用户
make && make install
groupadd mysql                             //所以在这里我们要建一个msyql的用户和组
useradd -g mysql mysql
chown -R mysql:mysql /usr/local/mysql
chmod +w /usr/local/mysql
mkdir /usr/local/mysql/data
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
cp support-files/my-medium.cnf /usr/local/mysql/my.cnf
nano /usr/local/mysql/my.cnf
//加上以下内容
[mysqld]
socket  = /tmp/mysql.sock
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/mysql_error.log
pid-file = /usr/local/mysql/mysql.pid

到这儿mysql就安装好了。

二,apache配置和启动

ubuntu下用apt-get来安装的apache2,我感觉很怪异,看一下目录树

zhangy@ubuntu:~$ whereis apache2
apache2: /usr/sbin/apache2 /etc/apache2 /usr/lib/apache2 /usr/share/apache2 /usr/share/man/man8/apache2.8.gz
zhangy@ubuntu:~$ tree /etc/apache2
/etc/apache2
|-- apache2.conf //apache的配置文件
|-- conf.d
| `-- charset //编码设置文件
|-- envvars //用户设置文件
|-- httpd.conf
|-- mods-available //可用模块目录
| |-- actions.conf
| |-- actions.load
。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。
| |-- version.load
| `-- vhost_alias.load
|-- mods-enabled //已启动模块目录
| |-- alias.conf -> ../mods-available/alias.conf
| |-- alias.load -> ../mods-available/alias.load
。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。
| |-- status.conf -> ../mods-available/status.conf
| `-- status.load -> ../mods-available/status.load
|-- ports.conf //端口监听文件
|-- sites-available //可用站点目录
| `-- default //可用站点的配置文件,根httpd.vhost.conf类似
`-- sites-enabled //已用站点目录
`-- 000-default -> /etc/apache2/sites-available/default //已用站点的配置文件,根httpd.vhost.conf类似
5 directories, 118 files


ubuntu把apache的整个配置进行分块,感觉还是挺清晰的,不过我还是第一次见到这样的布局,如果不习惯这种布局的话,还是用源码进行安装吧。


root@ubuntu:/home/zhangy# /usr/sbin/apache2 -k start
apache2: bad user name ${APACHE_RUN_USER} //提示错误
root@ubuntu:/home/zhangy# /etc/init.d/apache2 start //用这个就不会提示上面的错误了,不过又有新错误了。
* Restarting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[ OK ]
root@ubuntu:/etc/apache2/sites-enabled# cat /etc/hosts //把里面的相应部分改成以下内容,上面的错误就不会出现了。
127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost.localdomain ubuntu
root@ubuntu:/home/zhangy# /etc/init.d/apache2 restart
* Restarting web server apache2 [ OK ]
root@ubuntu:~# ps -e|grep apache //感觉很怪
779 ? 00:00:00 apache2
784 ? 00:00:00 apache2
785 ? 00:00:00 apache2
787 ? 00:00:00 apache2
788 ? 00:00:00 apache2
789 ? 00:00:00 apache2
983 ? 00:00:00 apache2
984 ? 00:00:00 apache2
985 ? 00:00:00 apache2

二,php的配置

root@ubuntu:/etc/php5# find . -name "php.ini" -print
./cgi/php.ini
./apache2/php.ini


在这里我们用的php-cli,所以配置文件是apache2下面的php.ini,如果需要配置什么的话,可以对其进行修改,改之前最好先备份一下



我发现ubuntu下用apt-get安装的php也是十分的怪异,我就是找不到php,phpize,php-config等文件,这我就搞不懂了,如果我要自己,编译一个模块php,没有phpize怎么办,要重新把php安装一下吗?


三,mysql配置和启动

源码安装mysql的配置文件放在/usr/local/mysql下my.cnf,如果需要改什么可以在这里面修改

mysql启动,mysqld_safe
或者是
root@ubuntu:/usr/local/mysql# cp share/mysql/mysql.server
/etc/init.d/mysqld
root@ubuntu:/usr/local/mysql# /etc/init.d/mysqld restart
Shutting down MySQL
. *
Starting MySQL
. *

四,phpmyadmin的配置

root@ubuntu:/etc/apache2/sites-enabled# whereis phpmyadmin
phpmyadmin: /etc/phpmyadmin /usr/share/phpmyadmin
将phpmyadmin的代码/usr/share/phpmyadmin ,copy你的web目录下,就可以,我们可以修改
phpmyadmin/libraries/config.default.php,
$cfg['Servers'][$i]['auth_type'] = 'config'; //设置访问权限的类型
$cfg['Servers'][$i]['user'] = 'root'; //设置用户名
$cfg['Servers'][$i]['password'] = ''; //设置密码

里面的设置有很多,上面的三个是常用的。


通过在ubuntu下,安装apache,php,mysql,phpmyadmin,我得出一个结果,在ubuntu下,最好还是都用源码安装。哈哈,比较适合一般人的习惯。