linux编译安装LAMP
Linux安装Apache+MySQL+PHP
安装部分依赖
安装apr(可选)
# tar -xf apr-1.5.0.tar.bz2 # cd apr-1.5.0 #./configure --prefix=/usr/local/apr //指定其安装位置 # make && make install
安装apr-util
# tar -xf apr-util-1.5.3.tar.bz2 # cd apr-util-1.5.3 # ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr # make && make install
安装pcre(可选)
# tar -xf pcre-8.35.tar.gz # cd pcre-8.35 # ./configure --prefix=/usr/local/pcre # make && make install
编译安装apache
# tar -xf httpd2.4.9.tar.gz # cd <span style="font-family: Arial, Helvetica, sans-serif;">httpd2.4.9</span> # ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most # make && make install编译过程中假设缺少其它依赖,可单独安装就可以,安装过程如上面apr安装。
假设提示apr相关错误,将编译语句中--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util 參数去掉就可以。由于Apache默认包括了自己的apr相关东西。
启动http
/usr/local/apache/bin/apachectl start浏览器输入http://IP/就可以看到 It Works!
将apache增加service服务。
cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
此时可通过service httpd start/stop启动关闭http服务
编译安装MySQL
MySQL编译安装过程见此处http://blog.csdn.net/zqtsx/article/details/9378703,这里不再描写叙述。
下载mysql源代码:http://dev.mysql.com/downloads/mysql/,或者可到此处下载5.6.19版本号:http://www.kuaipan.cn/file/id_671818784440506.htm?
准备開始安装
groupadd mysql useradd -r -g mysql mysql解压并安装:
tar zxvf mysql-5.6.12.tar.gz cd mysql-5.6.12 (下面是一行 这里为了方便大家理解和凝视写成换行凝视,实际编译中请在换行前 加 " \ "链接)cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安装路径 -DMYSQL_DATADIR=/usr/local/mysql/data \ #数据文件存放位置 -DSYSCONFDIR=/etc \ #my.cnf路径 -DWITH_MYISAM_STORAGE_ENGINE=1 \ #支持MyIASM引擎 -DWITH_INNOBASE_STORAGE_ENGINE=1 \ #支持InnoDB引擎 -DWITH_MEMORY_STORAGE_ENGINE=1 \ #支持Memory引擎 -DWITH_READLINE=1 \ #快捷键功能(我没用过) -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \ #连接数据库socket路径 -DMYSQL_TCP_PORT=3306 \ #port -DENABLED_LOCAL_INFILE=1 \ #同意从本地导入数据 -DWITH_PARTITION_STORAGE_ENGINE=1 \ #安装支持数据库分区 -DEXTRA_CHARSETS=all \ #安装全部的字符集 -DDEFAULT_CHARSET=utf8 \ #默认字符 -DDEFAULT_COLLATION=utf8_general_ci make make install编译安装完毕后,继续运行例如以下操作:
cd /usr/local/mysql chown -R mysql:mysql . (为了安全安装完毕后请改动权限给root用户) scripts/mysql_install_db --user=mysql (先进行这一步再做例如以下权限的改动) chown -R root:mysql . (将权限设置给root用户,并设置给mysql组。 取消其它用户的读写运行权限,仅留给mysql "rx"读运行权限。其它用户无不论什么权限) chown -R mysql:mysql ./data (给数据库存放文件夹设置成mysql用户mysql组。并赋予chmod -R ug+rwx 读写运行权限,其它用户权限一律删除仅给mysql用户权限)
将mysql的启动服务加入到系统服务中
cp support-files/mysql.server /etc/init.d/mysql #如今能够使用以下的命令启动mysql service mysql start #停止mysql服务 service mysql stop #重新启动mysql服务 service mysql restart
改动password cd 切换到mysql所在文件夹
cd /usr/local/mysql
#./bin/mysqladmin -u root password
回车在接下来的提示中设置新password就可以。
#測试MySQL是否启动
# 1)查看是否有进程mysql
ps -ef | grep mysql
# 2)查看port是否执行
netstat -tnl | grep 3306
# 3)读取mysql版本号信息
mysqladmin version
# 1)查看是否有进程mysql
ps -ef | grep mysql
# 2)查看port是否执行
netstat -tnl | grep 3306
# 3)读取mysql版本号信息
mysqladmin version
附:安装mysql过程中可能出现类似例如以下错误:
The server quit without updating PID f[失败]var/lib/mysql/
非常可能是本机之前已经安装过mysql导致,用rpm查看本机是否安装mysql。假设有的话须要卸载掉,然后又一次依照上面的步骤编译安装mysql就可以。
编译安装PHP
# tar -xf php-5.5.12.tar.gz # cd php-5.5.12 # ./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache/bin/apxs --enable-fastcgi --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --disable-debug --disable-ipv6 --with-iconv-dir --with-freetype-dir --with-jpeg-dir=/usr/local/jpeg --with-zlib --with-libxml-dir=/usr/local/libxml2 --enable-xml=/usr/local/libxml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl=/usr/local/curl --enable-mbregex --enable-fpm --enable-mbstring --with-gd --enable-gd-native-ttf --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap # make && make install编译过程中假设缺少其它依赖。可单独安装就可以。安装过程如上面apr安装。
拷贝配置文件到php文件夹:
# cp php.ini-production /usr/local/php5/etc/php.ini
PHP与Apache整合
编辑apache配置文件httpd.conf,以apache支持php:
首先要在apache配置文件里定义,使apache可以处理php结尾的文件 ,全文查找AddType字段,加入一下内容
[root@Spg-RedHat htdocs]# vi /usr/local/apache/conf/httpd.conf AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps 找到DirectoryIndex,加入index.php: DirectoryIndex index.php index.html <Directory /data/bbs/admin> Options FollowSymLinks AllowOverride None Order deny,allow Allow from all </Directory>
加入測试页面:
[root@Spg-RedHat htdocs]# vim /usr/local/apache/htdocs/index.php 编辑增加: <? phpinfo(); ?>
重新启动http:
service httpd stop
service httpd start
測试结果:
至此。PHP成功安装。
集成xcache(可选)
安装:
# tar xf xcache-3.0.3.tar.gz # cd xcache-3.0.3 # /usr/local/php5/bin/phpize //phpize是用来安装php扩展模块的。通过phpize能够建立php的外挂模块,若你想在原来编译好的php中增加memcached或者ImageMagick等扩展模块。就须要使用phpize # ./configure --enable=xcache --with-php-config=/usr/local/php5/bin/php-config [root@Spg-RedHat xcache-3.1.0]#make && make install Installing shared extensions: /usr/local/php5/lib/php/extensions/no-debug-zts-20121212/
集成:改动php.ini文件,增加例如以下内容:
[root@Spg-RedHat xcache-3.1.0]# vim /usr/local/php5/etc/php.ini
[xcache-common] extension = <span style="white-space: nowrap; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace;">/usr/local/php5/lib/php/extensions/no-debug-zts-20121212</span><span style="white-space: nowrap; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace;">/xcache.so</span> [xcache.admin] xcache.admin.enable_auth = On xcache.admin.user = "admin" xcache.admin.pass = "6a0194f9707fa832ece6f5b66a25567e" #echo -n "youp-assword" |md5sum |awk '{print $1}' [xcache] xcache.shm_scheme = "mmap" xcache.size = 128M xcache.count = 1 xcache.slots = 8K xcache.ttl = 0 xcache.gc_interval = 0 xcache.var_size = 0M xcache.var_count = 1 xcache.var_slots = 8K xcache.var_ttl = 0 xcache.var_maxttl = 0 xcache.var_gc_interval = 300 xcache.test = Off xcache.readonly_protection = Off xcache.mmap_path = "/dev/zero" xcache.coredump_directory = "" xcache.cacher = On xcache.stat = On xcache.optimizer = Off [xcache.coverager] xcache.coverager = Off xcache.coveragedump_directory = ""
pass自行生成,为明文MD5加密结果。
网上也有通过将xcache.ini文件复制到/etc/php.d/文件夹下进行集成的方法,可是我尝试未成功。有兴趣可自行尝试。
再重新启动Apache。在phpinfo页面就可以看到xcache相关配置。例如以下图所看到的:
结束:没接触过php,首次安装php,痛苦的过程。