什麽是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. python编程系列---Pycharm快捷键(更新中....)

    以下是我常用到的Pycharm快捷键(还有很多,只是我暂时用的最多的就这些): 在开发过程中,经常使用一些快捷键会大大提高开发效率,不要因为看这多而不用,常用的就那些,用得多就都记住了,脱离鼠标,逼格 ...

  2. 【教程】基于Ubuntu系统的PyTorch虚拟环境配置

    目录 一.PyTorch虚拟环境配置 二.PyTorch虚拟环境使用 三.常用命令 Editor: Veagau Time: 2019/10/17 一.PyTorch虚拟环境配置 该部分操作均在终端( ...

  3. The usage of Markdown---标题

    更新时间:2019.09.14 目录: 1. 序言 2. 标题   2.1 类Atx形式   2.2 类Setext形式 3. 总结 1. 序言   Markdown是一种纯文本的标记语言,只要熟悉M ...

  4. 拨云见日,彻底弄清楚Java日志框架 log4j, logback, slf4j的区别与联系

    log4j 以及 logback, slf4j 官网 日志框架的困惑 作为一个正常的项目,是必须有日志框架的存在的,没有日志,很难追踪一些奇奇怪怪的系统问题. 但是,我们经常在项目的依赖中,见到奇奇怪 ...

  5. Spring Boot WebFlux 2.1.7 中文翻译文档

    1. 前言 从一开始学习 Netty 到 rxjava.Rector,再到 java8 的 CompletableFuture,就深深的为响应式编程着迷,这种区别于传统的顺序式编程,没准未来能在编程世 ...

  6. ApplicationContextAware使用理解

    接口的作用 当一个类实现了这个接口(ApplicationContextAware)之后,Aware接口的Bean在被初始之后,可以取得一些相对应的资源,这个类可以直接获取spring 配置文件中 所 ...

  7. Oracle ADG环境搭建

    部署 环境介绍 1,软件安装前基础部署 (两台做同样操作) 1.1,关闭selinux和防火墙 因为centos7里面没有/etc/sysconfig/iptables这个配置文件所以我们首先用yum ...

  8. 前端技术之:如何在vuex状态管理action异步调用结束后执行UI中的方法

    一.问题的起源 最近在做vue.js项目时,遇到了vuex状态管理action与vue.js方法互相通信.互操作的问题.场景如下图所示: 二.第一种解决方法 例如,我们在页面初始化的时候,需要从服务端 ...

  9. 洛谷P2107 【小Z的AK计划】

    #include<iostream> #include<queue> #include<algorithm> using namespace std; struct ...

  10. 基础练习1——ls的实现与递归

    学习贵在坚持,兜兜转转,发现还是从基础做起吧,打好基础,才会长期的坚持下去... 第一个练习:shell命令 “ls"的实现与递归 1.简介:ls 的作用是列举当前目录下所有的目录和文件. ...