ubuntu12.04搭建mysql+apache+php

1 篇文章 0 订阅
1 篇文章 0 订阅
1安装虚拟机vmware9.0

2安装ubuntu桌面版12.04

3安装g++
sudo apt-get install g++

4安装libtool,apt-get install libtool
下载apr、apr-util,地址:http://apr.apache.org/download.cgi
 下载pcre,地址:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
 并解压

5编译安装 apr、apr-util、pcre
配置./configure --prefix=/usr/local/apr,然后make,make install
配置./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config,然后make,make install
配置./configure --prefix=/usr/local/pcre,然后make,make install

6安装基础编译环境
apt-get install build-essential

7下载zlib-1.2.7,地址http://ishare.iask.sina.com.cn/f/13924714.html
配置CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/zlib ,然后make,make install

8安装最新的libssl-dev
apt-get install libssl-dev

9下载并编译安装apache,地址:http://www.fayea.com/apache-mirror/httpd/

./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --enable-ssl --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre ,然后make,make install

10加入环境变量 nano /etc/environment
/usr/local/apache/bin/apachectl
/usr/local/apache/bin/httpd

11开机自启动apache
加入软连接ln -s /usr/local/apache/bin/apachectl /etc/init.d/
update-rc.d apachectl defaults

12安装libaio
sudo apt-get install libaio-dev

13安装mysql5.5.28 地址:http://ishare.iask.sina.com.cn/f/34838829.html
如果需要安装cmake,则apt-get install cmake
安装libncurses5-dev,apt-get install libncurses5-dev

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=root -DWITH-EMBEDDED_SERVER=1 -DSYSCONFDIR=/usr/local/mysql/etc -DMYSQL_UNIX_ADDR=/usr/local/mysql/tmp/mysqld.sock -DWITH_READLINE=1 -DWITH_SSL=yes -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DINSTALL_PLUGINDIR=/usr/local/mysql/plugin

然后make,make install

参数解说:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data //数据库存放目录
-DWITH_MYISAM_STORAGE_ENGINE=1 //安装myisam存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 //安装innodb存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 //安装archive存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 //安装blackhole存储引擎
-DENABLED_LOCAL_INFILE=1 //允许从本地导入数据
-DDEFAULT_CHARSET=utf8   //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校验字符
-DEXTRA_CHARSETS=all   //安装所有扩展字符集
-DMYSQL_TCP_PORT=3306 //MySQL监听端口
-DMYSQL_USER=root //MySQL用户名
-DWITH-EMBEDDED_SERVER=1 //编译成embedded MySQL library (libmysqld.a)
-DSYSCONFDIR=/usr/local/mysql/etc //MySQL配辑文件
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock //Unix socket 文件路径
-DWITH_READLINE=1 //快捷键功能
-DWITH_SSL=yes //SSL
-DWITH_MEMORY_STORAGE_ENGINE=1 //安装memory存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 //安装frderated存储引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 //安装数据库分区
-DINSTALL_PLUGINDIR=/usr/local/mysql/plugin //插件文件及配置路径

初始化授权表
/usr/local/mysql/scripts/mysql_install_db --defaults-file=/usr/local/mysql/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=root

复制配置文件
mkdir /usr/local/mysql/etc
cp /usr/local/mysql/support-files/my-medium.cnf /usr/local/mysql/etc/my.cnf

建立软链接

ln -s /usr/local/mysql/bin/mysqld_safe /usr/local/bin
ln -s /usr/local/mysql/bin/mysqladmin /usr/local/bin
ln -s /usr/local/mysql/bin/mysql /usr/local/bin

启动mysql服务
bin/mysqld_safe --user=root &

检查mysql服务
bin/mysqladmin version //检查服务器版本
bin/mysqlshow //列出所有数据库
bin/mysqlshow mysql //列出mysql数据库中的所有表

使用SET PASSWORD设置密码(推荐)
/usr/local/mysql/ bin/mysql
mysql> select host,user,password from mysql.user;
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
mysql> SET PASSWORD FOR 'root'@'127.0.0.1' = PASSWORD('123456');
mysql> SET PASSWORD FOR 'root'@'ubuntu' = PASSWORD('123456'); //ubuntu换为你的主机名

删除匿名帐户
/usr/local/mysql/ bin/mysql -u root -p
mysql> DROP USER ''@'localhost';
mysql> DROP USER ''@'ubuntu'; //ubuntu换为你的主机名

14 安装php,地址http://cn2.php.net/get/php-5.4.9.tar.gz/from/a/mirror
安装如下依赖:
安装libreadline6-dev,apt-get install libreadline6-dev
安装LibXML,apt-get install libxml2
        apt-get install libxml2-dev
安装bzip2,安装包bzip2-1.0.5.tar.gz,解压后make,make install
安装libcurl,apt-get install libcurl4-gnutls-dev
安装libjpeg,apt-get install libjpeg-dev
安装libpng,apt-get install libpng-dev
安装libxpm,apt-get install libxpm-dev
安装libfreetype,apt-get install libfreetype6-dev
安装libt1,apt-get install libt1-dev
安装libmcrypt,apt-get install libmcrypt-dev
安装libmysql++,apt-get install libmysql++-dev
安装libxslt1,apt-get install libxslt1-dev

配置PHP
--无GD库
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-apxs2=/usr/local/apache/bin/apxs --with-curl --with-bz2 --with-zlib-dir=/usr/local/zlib --with-mcrypt --enable-pdo --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --with-imap-ssl --with-jpeg-dir=/usr/lib/ --with-png-dir=/usr/lib/ --enable-exif --enable-zip --enable-ftp --enable-soap --enable-sockets --with-curlwrappers --with-xsl --with-gettext --with-pear --enable-calendar --enable-mbstring --enable-bcmath --with-mhash --with-iconv-dir=/usr/local --with-libxml-dir=/usr/local/libxml2
--有GD库
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-apxs2=/usr/local/apache/bin/apxs --with-curl --with-bz2 --with-zlib-dir --with-mcrypt --enable-safe-mode --enable-pdo --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --with-imap-ssl --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --enable-exif --enable-zip --enable-ftp --enable-soap --enable-sockets --with-curlwrappers --with-ttf --with-xsl --with-gettext --with-pear --enable-calendar --enable-mbstring --enable-bcmath --with-mhash

如果出现/usr/local/lib/libbz2.a: could not read symbols: Bad value
把/usr/local/lib中的libbz2.a删掉
进入解压缩的zli目录,用make clean命令清理一下

修改zlib-1.2.3的Makefile文件
    把gcc的编译参数加上 -fPIC
    make clean,make,make install
修改bzip2-1.0.4的Makefile文件
    CC=gcc -fPIC
    make clean,make,make install

然后php编译安装make,make install
把php.ini-production 或者php.ini-development拷到/usr/local/php/etc/目录下。
cp php.ini-production /usr/local/php/etc/

15 安装redis
sudo apt-get install tcl8.5
解压redis tar -zxvf redis-2.4.15.tar.gz
编译安装make PREFIX=/usr/local/redis
    make PREFIX=/usr/local/redis install

设置redis自启动
 mkdir -p /usr/local/redis/{etc,var}

        cp redis.conf /usr/local/redis/etc/
改配置nano /etc/rc.local
在最后一行加入
./usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
修改redis-conf配置文件
设置端口为10086
 (port 10086)设置访问密码 (requirepass123456),修改后台运行(daemonize yes)

16安装phpredis
解压phpredis,运行/usr/local/php/bin/phpize

报autoconf错时,apt-get install autoconf 目前autoconf版本为2.69
报config.m4错误时 解压m4-1.4.9,进入目录后./configure ,make && make install

配置phpredis,./configure --with-php-config=/usr/local/php/bin/php-config
编译,make,make install

修改php.ini 添加phpredis扩展
在php.ini中添加一行:extension=redis.so
并更改extension_dir路径

17 修改配置文件:/usr/local/apache/conf httpd.conf
设置监听端口
Listen 80
Listen 8888

启用php modules
LoadModule php5_module        modules/libphp5.so

添加php文件支持
<IfModule mime_module>
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
</IfModule>

启用虚拟目录
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

启用gzip压缩
<IfModule mod_deflate.c>
DeflateCompressionLevel 6
AddOutputFilterByType DEFLATE text/plainAddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/cssAddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>

支持路由 url重写
Listen 80
修改AllowOverride None 为AllowOverride ALL(多处)

18 虚拟主机配置文件: /usr/local/apache/conf/extra httpd-vhosts.conf 修改

添加虚拟主机:
<VirtualHost *:80>    
ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "/usr/local/apache/htdocs/"
    ServerName localhost
    ServerAlias localhost
    ErrorLog "logs/dummy-host.example.com-error_log"
    CustomLog "logs/dummy-host.example.com-access_log" common
<Directory />       
Options FollowSymLinks       
AllowOverride All       
Order allow,deny       
Allow from all   
</Directory>
</VirtualHost>


启动redis
sudo /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

重启apache  /etc/init.d/apache restart
apachectl restart

如果重启后mysqld_safe启动报错时,如果/etc/mysql/my.cnf文件存在,删除后即可启动成功。


使用zend framework框架
参考:(http://hi.baidu.com/billdkj/item/cc7bb5c07274f044a9ba9426)
1、apache服务器,并正确配置了mod_rewrite扩展;(如果没有配置这一模块,打开httpd.conf 配置文档,添加LoadModule rewrite_module modules/mod_rewrite.so)

如果modules文件夹下没有mod_rewrite.so,则重新编译。
参考(http://blog.csdn.net/jiangnanandi/article/details/5017568)
/home/eric/Downloads/httpd-2.2.23/modules/mappers# /usr/local/apache/bin/apxs -c mod_rewrite.c
 /usr/local/apache2/bin/apxs -i -a -n mod_rewrite mod_rewrite.la
上条命令执行后,modules文件夹下应该已经有mod_rewrite.so文件了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值