老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略
一、首先安装MySql:
对于MySql来讲在整个过程中是相对独立的安装,并且我的ubuntu在以前做开发的时候就已经安装了MySql,所以以下只给出安装步骤:
1、安装MySql的服务:
sudoapt-getinstallmysql-server
要注意的是安装过程中会提示你设置mysql的root账户的密码;其他就没什么需要注意的地方了。
2、安装MySql的客户端:
sudoapt-getinstallmysql-client
直接输入安装
3、安装MySql的lib依赖库:
sudoapt-getinstalllibmysqlclient15-dev
进行安装。
如果不安装的话会在系统中找不到mysql.h
4、MySQL的一些简单管理:
启动MySQL服务:
sudostartmysql
停止MySQL服务:
sudostopmysql
修改MySQL的管理员密码:
sudomysqladmin-urootpasswordnewpassword
设置远程访问(正常情况下,mysql占用的3306端口只是在IP127.0.0.1上监听,拒绝了其他IP的访问(通过netstat可以查看到)。取消本地监
听需要修改my.cnf文件:):
sudovi/etc/mysql/my.cnf bind-address=127.0.0.1//找到此内容并且注释
5、MySQL安装后的目录结构分析(此结构只针对于使用apt-getinstall在线安装情况):
数据库存放目录:/var/lib/mysql/
相关配置文件存放目录:/usr/share/mysql
相关命令存放目录:/usr/bin(mysqladminmysqldump等命令)
启动脚步存放目录:/etc/rc.d/init.d/
以上就是MySql的基本安装了。
二、安装apache2:
1、官网下载http://httpd.apache.org/download.cgi,UnixSource:httpd-2.2.24.tar.gz,我下的是2.2.24版本的tar.gz,然后解压tar.gz
tarzxvfhttpd-2.2.24.tar.gz
把解压出来的文件移动到/usr/src/apache2
sudomv-rhttpd-2.2.24/usr/src/apache2
如果没有apache2文件无法移动的话手动创建一个
sudomkdri/usr/src/apache2
由于修改/usr/下的文件需要root权限,所以需要加上sodu命令,加输入密码。
2、进入/usr/src/apache2/httpd-2.2.24,并且编译安装
cd/usr/src/apache2/httpd-2.2.24 ./configure-prefix=/usr/local/apache-enable-module=so-enable-rewrite=shared-enable-authn-dbm
编译完成没错之后
输入make命令,完成后输入:makeinstall开始安装。
3、安装完成后配置httpd.conf:
vim/usr/local/apache2/conf/httpd.conf#用编辑器打开httpd.conf我用的是vim打开的
找到#ServerName将前面的注释符号#去掉 并且将后面的内容改成localhost:80整句就是:
ServerNamelocalhost:80
这样服务启动的时候可以通过localhost来进行访问。
如果要修改服务器的监听端口的话可以在httpd.conf中查找Listen80把后面的80改成你想要的端口,在把ServerNamelocalhost:80后面的80改成你想要的端口。
4、启动服务:
cd/usr/local/apache2/bin#进入/usr/local/apache2/bin目录 sudo./apachectlstart#启动apache服务
然后打开游览器,输入访问地址localhost看看能否显示ItWorks,如果可以显示就说明已经安装完成。
三、安装配置PHP5
1、首先安装libxml2库,用来解析xml的的lib库输入:sudoapt-getinstalllibxml2-dev进行安装
2、官网下载phphttp://www.php.net/downloads.php然后解压下载来的tar.gz包
tarzxvfphp-5.4.15.tar.gz#解压 sudomv-rphp-5.4.15/usr/src/php5#移动到/usr/src/php5目录下
3、编译安装php
cd/usr/src/php/php-5.4.15#进入php所在目录 ./configure -prefix=/usr/local/php5#php安装目录 -with-apxs2=/usr/local/apache2/bin/apxs#apxs所在的目录,如果没有就sudofind/-nameapxs查询一下所在的目录 -with-mysql=/usr/#这个是查找mysql.h的目录,不知道为什么我的mysql.h在/usr/include/中但是写这个路径没用必须写/usr/如果不知道mysql.h在哪就sudofind/-namemysql.h查找一下 -with-mysqli=/usr/bin/mysql_config#mysql_config所在的目录,如果不再这个目录就find一下。 -with-gd#打开对gd库的支持,如果应为这个报错,就安装一下gd库 -with-pear#打开pear命令的支持 -with-libxml-dir#打开对刚刚安装的libxml2的支持
整条编译语句是:
./configure-prefix=/usr/local/php5-with-apxs2=/usr/local/apache2/bin/apxs-with-mysql=/usr/ -with-mysqli=/usr/bin/mysql_config-with-gd -with-pear-with-libxml-dir
如果编译时出现error的话一般都是依赖库lib出问题,看提示缺少什么依赖库,然后安装一下就行。
完成后make一下然后再输入makeinstall进行安装。
4、手动指定php.ini文件:
打开/usr/local/apache2/conf/httpd.conf,在LoadModulephp_module modules/libphp5.so这行下面加入PHPIniDir/etc/php.ini指定php.ini的路径,然后进入你解压的php-5.4.15.tar.gz的目录将php.ini-development复制到你指定的路劲/etc里并且重命名为php.ini:
cd/usr/src/php/php-5.4.15#进入php目录 sudocpphp.ini-development/etc#复制到/etc sudomvphp.ini-developmentphp.ini#重命名为php.ini
5、修改httpd.conf中的php支持和默认访问index.php:
打开/usr/local/apache2/conf/httpd.conf,把<Directory/>中的内容改成:
<Directory/> OptionsFollowSymLinks DirectoryIndexindex.phpindex.html#指定默认先查找index.php如果没有就查找index.html AllowOverrideNone Orderdeny,allow Denyfromall </Directory>
接着在AddTypeapplication/x-gzip.gz.tgz下面一行中加入:
AddTypeapplication/x-httpd-php.php AddTypeapplication/x-httpd-php-source.phps
完成后保存文件,如果提示文件是只读模式无法保存的话,那么肯定是权限不够在用打开httpd.conf的命令时要加上sudo
6、启动\重启apache服务,在服务器根目录下编写php文件
sudo/usr/local/apache2/bin/apachectlstop#停止服务 sudo/usr/local/apache2/bin/apachectlstart#启动服务 sudo/usr/local/apache2/bin/apachectlrstart#重启服务
cd/usr/lcoal/apache2/htdocs#进入apache2默认根目录
创建一个index.php文件在里面编写<?phpechophpinfo();?>然后打开游览器输入localhost看看能否显示php的信息,如果可以则配置成功。
四、其他配置:
1、手动配置apache的默认的根目录
用编辑器打开/usr/local/apache2/conf/httpd.conf目录然后找到DocumentRoot/usr/lcoal/apache2/htdocs把这个路径改成你要的路径然后在往下一点找到<Directory"/usr/lcoal/apache2/htdocs">把里面的路径也改成你想要指定的路径就可以了。
2、查看php.ini所在的路径:
很多时候不知道指定php.ini的路径在哪看,只要编写<?phpechophpinfo();?>文件然后用游览器访问,看到php所有信息之后找到:LoadedConfigurationFile这一行的右边的路径信息就是指定的php.ini路径的地址了。