什麽是LAMP? 拆開看 L 就是Linux系統 A是Apache的縮寫 M.P則是MySQL和PHP的简写。

其实就是把Apache, MySQL以及PHP安装在Linux系统上,组成一个环境来运行php的脚本语言。

Apache是最常用的WEB服务软件,而MySQL是比较小型的数据库软件,这两个软件以及PHP都可以安装到windows的机器上。

---------------下面開始正題!------------

首先

搭建一個httpd(apache)我們需要準備 apr 及 apr-util

wget ftp://laopaa.cn/apr-1.6.3.tar.bz2

wget ftp://laopaa.cn/apr-util-1.6.1.tar.bz2

wget ftp://laopaa.cn/httpd-2.4.38.tar.bz2

tar jxf apr-1.6.3.tar.bz2

tar jxf apr-util-1.6.1.tar.bz2

tar jxf httpd-2.4.38.tar.bz2

下載好httpd所有的源碼包就開始編譯安裝

cd apr-1.6.3.tar.bz2

./configure --prefix=/usr/local/apr            ///配置apr 將安裝路徑設置未/usr/local/aprmake && make install                           //make編譯源碼包  成功則 安裝

cd apr-util-1.6.1.tar.bz2

這一步如果報錯 原因是因为缺少了一个libexpat1内库包sudo apt-get install libexpat1-dev或者進入挂載光盤的地方 如: cd /media/xitong/Packages/

rpm -ivh apr-1.4.8-3.el7_4.1.x86_64.rpm
rpm -ivh apr-devel-1.4.8-3.el7_4.1.x86_64.rpm
rpm -ivh cyrus-sasl-2.1.26-23.el7.x86_64.rpm
rpm -ivh cyrus-sasl-devel-2.1.26-23.el7.x86_64.rpm
rpm -ivh expat-devel-2.1.0-10.el7_3.x86_64.rpm
rpm -ivh libdb-devel-5.3.21-24.el7.x86_64.rpm
rpm -ivh openldap-devel-2.4.44-13.el7.x86_64.rpm
rpm -ivh apr-util-devel-1.5.2-6.el7.x86_64.rpm
rpm -ivh apr-util-1.5.2-6.el7.x86_64.rpm
rpm -ivh pcre-devel-8.32-17.el7.x86_64.rpm
rpm -ivh pcre-8.32-17.el7.x86_64.rpm

////////////以上是我總結的所需依賴包

進入正題 安裝apr-util

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr            //配置apr-util 將安裝路徑設置未/usr/local/apr-util 并指明依賴包apr的路徑

make && make install                                                                   //編譯且安裝 如進行之前的操作 這一步時不會報錯的

 編譯安裝httpd就速戰速決了:

./configure --prefix=/usr/local/httpd --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-utilmake && make install這樣我們的httpd則編譯安裝好了,安裝路徑未 /usr/local/httpd  存放網頁的路徑未/usr/local/httpd/htdocs 默認有個index.html

  

安裝好了httpd 但是我們并不能執行 service httpd start 打開或者關閉服務 必須進入/usr/local/httpd/bin 下 輸入 apachectl -k start 打開服務 這樣相當麻煩如要將httpd加入系統服務 該如何做呢?
cp /usr/local/httpd/bin/apachectl /etc/rc.d/init.d/httpd         //將啓動脚本複製到 init.d下面
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpdvi /etc/init.d/httpd在第二排複製加入

#chkconfig: 35 85 21                                              //將httpd加入chkconfig 守護進程管理 級別未 3  5  圖形化和多用戶
#description: Startup script for the Apache HTTP Server

然後

ln -s /usr/local/httpd/bin/* /usr/local/bin                        //給/usr/local/httpd/bin下的所有文件創建一個軟連接 到/usr/local/bin

最後

chkconfig --add httpd                               //將httpd加入 chkconfig

這樣我們就可以直接通過

httpd -v 來檢查版本 并且 httpd -t 來檢查語法是否錯誤  service httpd start 也可以直接啓動服務了 相當方便

如不能訪問到網頁 請自行添加防火墻規則 iptables

-----------Mysql----------------

準備好
mysql-5.5.22.tar
cmake-2.8.12.2.tar

wget ftp://laopaa.cn/cmake-2.8.6.tar.gz

wget ftp://laopaa.cn/mysql-5.5.22.tar.gz

執行安裝依賴包:# yum -y install libtool-ltdl-devel libtoolyum -y install ncurses-devel

tar -zxf cmake-2.8.12.2.tar
tar -zxf mysql-5.5.22.tar

cd cmake-2.8.6  //進入cmake目錄./configuregmake && gmake install                 //編譯mysql 需要使用到cmake   而gcc and g++分别是GNU的c &c++编译器 所以這裏使用到gmake 來編譯cmake

  

groupadd mysql                          //創建一個用戶組 mysql  用於管理mysqlmysql -M -s /sbin/nologin mysql -g mysql -G mysql      //創建一個mysql程序用戶 

  接下倆就是安裝mysql

cd mysql-5.5.22cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=allmake && make install                   //編譯并且安裝mysql

就在解壓出來的源碼目錄裏

cd mysql-5.5.22

cp support-files/my-medium.cnf /etc/my.cnf       複製配置文件 到 /etc/my.cnf

cp  support-files/mysql.server /etc/rc.d/init.d/mysqld     複製啓動脚本到 init.d下

chmod +x /etc/rc.d/init.d/mysql       給予執行權限

chown -R mysql:mysql /usr/local /mysql   將mysql的屬組 和 屬主 設置為 mysql

/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
//爲了正常使用MYSQL數據庫系統,應運行用戶mysql的身份執行初始化脚本 mysql_install_db 制定數據存放目錄

  export PATH=/usr/local/mysql/bin:$PATH

//爲了方便在任何目錄下使用mysql命令,需要在/etc/profile 設置系統環境變量source /etc/profile   //生效剛剛的export PATH=/usr/local/mysql/bin:$PATH

現在就可以輸入service mysqld start 開啓mysql了

mysql              //由於剛剛編譯安裝是沒有設置密碼 的 故此這裏衹需要輸入 myslq 就可以登陸 那麽要修改密碼呢?use mysql;         ///登陸之後 切換環境set password =password('123456');          //將密碼修改為123456 這裏可以隨意改變 成功會出現大大的OK!

------------PHP----------------

yum -y install zlib-devel xz-devel libxml2       //安裝依賴包

  所需源碼包:

libmcrypt

mhash

mcrypt

php

wget ftp://laopaa.cn/libmcrypt-2.5.8.tar.gz
wget ftp://laopaa.cn/mcrypt-2.6.8.tar.gz
wget ftp://laopaa.cn/php-5.3.28.tar.gz
wget ftp://laopaa.cn/mhash-0.9.9.9.tar.gz

下載完畢之後

1,安裝libmcrypt

tar zxf libmcrypt-2.5.8.tar.gz

cd libmcrypt-2.5.8

./configure
make && make installln -s /usr/local/lib/libmcrypt.* /usr/lib/                           //配置編譯安裝,添加軟連接到/usr/lib下

2.安裝mhash

tar zxf mhash-0.9.9.9.tar.gz

cd mhash-0.9.9.9/

./configure
make && make installln -s /usr/local/lib/libmhash* /usr/lib/                  //配置編譯安裝,添加軟連接到/usr/lib下

3.安裝 mcrypt

tar zxf mcrypt-.tar.gzcd mcrypt-2.6.8/./configureexport LD_LIBRARY_PATH=/usr/local/lib                        //解決configure 的報錯make && make install

4.安裝php

tar zxf php-5.3.28.tar.gzcd php-5.3.28/./configure --prefix=/usr/local/php5 --with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5 --enable-mbstring上面指令中 各選項的含義如下:--prefix : 制定將php程序安裝到哪個目錄下 如 /usr/local/php5--with-mcrypt :加載數據加密等擴展工具支持--with-apxs2 :設置apache httpd server 提供的apxs 模塊支持程序的文件位置--with-mysql :設置mysql數據庫服務程序的安裝位置--with-config-file-path :設置php的配置文件 php.ini 將要存放的位置--enable-mbstring :啓用多字節字符串功能,以便支持中文等代碼

 

vi /root/php-/Zend/zend_language_parser.h
//將317行 換成
int zendparse(void *compiler_globals);然後執行 make && make install

安裝完成后

httpd 默認文件時 index.html 我們可以給他加入一個 index.php

vi /usr/local/httpd/conf/httpd.conf

查找

DirectoryIndex index.html

修改為:

AddType application/x-httpd-php .php
DirectoryIndex index.php index.html

------搭建完畢----------

這樣我們的LAMP環境就搭建完畢了

可以測試一下

service httpd restart  //重啓服務

vi /usr/local/httpd/htdocs/index.php

<?php
     phpinfo();
?>

php測試成功

下面測試 php 與 mysql的搭配

vi /usr/local/httpd/htdocs/index.php

<?php
$link=mysql_connect('localhost','root','123456');               //root是賬號 123456 是密碼 自行修改
if($link)echo "hello world!";                                                 //成功提醒消息
mysql_close();
?>

成功

Centos7編譯安裝LAMP平臺的更多相关文章

  1. centos7 編譯 chmsee

    安装libchm及相关的devel包,安装 xulrunner 及 devel 包!否则后面make的时候会出错! 到解压出来的chmsee/src目录下,找到与你系统对应的Makefile文件,我选 ...

  2. Qt上FFTW組件的编译与安裝

    Qt上FFTW組件的編譯安裝 FFTW是一個做頻譜非常實用的組件,本文講述在Windows和Linux兩個平臺使用FFTW組件.Windows下的的FFTW組件已經編譯好成爲dll文件,按照開發應用的 ...

  3. 在 Windows 7 環境安裝 Python 2.6.6

    目前 Python 的最穩定的版本是 2.7.3 及 3.2.3,因為 2.x 與 3.x 語法並不是完全相容,在各版本之間也有些差異,所以建議還是各自安裝需要的版本… 艾小克工作環境是使用 2.6 ...

  4. FreeBSD利用 ports 來安裝軟體

    FreeBSD利用 ports 來安裝軟體   利用 ports 來安裝軟體 FreeBSD 的 ports 就是別人已經編譯過,安裝測試沒問題了,他們將軟體編譯時所需的組態設定.編譯程序及安裝程序, ...

  5. CentOS 7 編譯qBittorrent Web UI安裝指南

    前言 以下是安装qBittorrent教学. 适用于CentOS7或更新版本 适用于qBittorrent4.1.5或更新版本 安裝須知 qBittorrent基于libtorrent,所以必须先安装 ...

  6. windows 安裝 gcc 編譯器 - MinGW

    MinGW 介紹 MinGW 全稱 Minimalist GNU For Windows,是個精簡的Windows平台C/C++.ADA及Fortran編譯器,相比Cygwin而言,體積要小很多,使用 ...

  7. 鸟哥之安裝 CentOS7.x

    http://linux.vbird.org/linux_basic/0157installcentos7.php since 2002/01/01 新手建議 開始閱讀之前 網站導覽 Linux 基礎 ...

  8. centos7 系統vps安裝mysql5.6及設置本地遠程連接筆記

    用xshell連接上vps 1,下载mysql的repo源 wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm su ...

  9. kali 安裝虛擬機VMware

    0x00前言 由於之前已經安裝過虛擬機,這次爲了寫博客又重新安裝了一邊,有些地方直接按照之前的默認的設置來了,省了設置,中間又換了一個實驗環境.完成了文章中的演示,整個過程多次實驗是沒問題的,若有疑問 ...

随机推荐

  1. jquery 往上滚动的时显示,上下滚动执行的js

    $(document).on("mousewheel DOMMouseScroll", function (e) { var delta = (e.originalEvent.wh ...

  2. 云计算 docker 容器使用命令

    docker 使用命令: docker version 查看docker版本号 vi /etc/docker/daemon.json { "registry-mirrors": [ ...

  3. 宋宝华:Docker 最初的2小时(Docker从入门到入门)

    本文系转载,著作权归作者所有. 商业转载请联系作者获得授权,非商业转载请注明出处. 作者: 宋宝华 来源: 微信公众号linux阅码场(id: linuxdev) 最初的2小时,你会爱上Docker, ...

  4. C#开发命令执行驱动程序 之 读入命令行参数

    /// <summary> /// 在cmd窗体内执行如下: /// OrderDriverApp.exe Order Driver App /// 返回: /// The args ar ...

  5. 如何用好redis pipeline

    编者注:pipeline是Redis的一个提高吞吐量的机制,适用于多key读写场景,比如同时读取多个key的value,或者更新多个key的value.工作过程中发现挺多小伙伴都对pipeline多少 ...

  6. bit(比特)与Byte(字节)的区别与关系

    1.bit:位 (小写b) 也称比特 是英文 binary digit的缩写 二进制数系统中,每个0或1就是一个位(bit)位是数据存储(计算机中信息)的最小单位计算机中的CPU位数指的是CPU一次能 ...

  7. 【Java必修课】HashMap性能很好?问过我EnumMap没

    1 简介 我们知道Map只是一个接口,它有多种实现,Java中最常用的是HashMap了.而本文想讲述的是另一个实现:EnumMap.它是枚举类型的Map,要求它的Key值都必须是枚举型的. 2 创建 ...

  8. 【原创】基于.NET的轻量级高性能 ORM - TZM.XFramework 之让代码更优雅

    [前言] 大家好,我是TANZAME.出乎意料的,我们在立冬的前一天又见面了,天气慢慢转凉,朋友们注意添衣保暖,愉快撸码.距离 TZM.XFramework 的首秀已数月有余,期间收到不少朋友的鼓励. ...

  9. python变量和运算

    本文收录在Python从入门到精通系列文章系列 1. 指令和程序 计算机的硬件系统通常由五大部件构成,包括:运算器.控制器.存储器.输入设备和输出设备. 其中,运算器和控制器放在一起就是我们通常所说的 ...

  10. NOIP模拟 37

    啊哈这次没什么智障低错丢rank什么的托词了STO 发现好像110我就拿满了.. 水平不行..只会简单题qaq T1 可以树上启发式合并水过(普通分治也行) T2 我连那么显然的 一劳永逸的容斥都没想 ...