• 源码搭建LAMP服务器


    1. 安装Apache服务器

      wget http://apache.etoak.com/httpd/httpd-2.2.19.tar.gz
      tar -zxvf httpd-2.2.19.tar.gz
      cd httpd-2.2.19
      ./configure --prefix=PREFIX
      make
      make install
      apachectl -k start

    其中,PREFIX为apache的安装目录。安装完成后,打开http://localhost/ , 显示It works 。安装成功。
    注:编译Apache要求 apr、apr-util >= 1.2。如果你的系统中没有安装apr、apr-util,则你需要安装它们。
    如果你的系统中已经安装了apr、apr-util的1.0或1.1版本,则必须将你的apr、apr-util升级到1.2版本。
    apr和apr-util已经包含在Apache httpd的发行源代码中,你可以通过以下命令安装:

      #编译和安装 apr 1.2   
      cd srclib/apr
      ./configure --prefix=/usr/local/apr-httpd/
      make
      make install
    
      #编译和安装 apr-util 1.2
      cd ../apr-util
      ./configure --prefix=/usr/local/apr-util-httpd/ --with-apr=/usr/local/apr-httpd/
      make
      make install 
    
      #配置 httpd  
      cd ../..  
      #用以下的./configure命令替换上面的./configure命令来配置httpd的编译。  
      ./configure --prefix=PREFIX --with-apr=/usr/local/apr-httpd/ --with-apr-util=/usr/local/apr-util-httpd/

    2. 安装MySQL数据库

      #编译MySQL5.5.15,需要安装cmake
      wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz
      tar -zxvf cmake-2.8.5.tar.gz
      cd  cmake-2.8.5
      ./configure
      make
      make install
    
      #编译安装MySQL需要ncurses库,所以你要编译安装ncurses
      wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gz
      tar -zxvf ncurses-5.9.tar.gz
      cd ncurses-5.9
      ./configure
      make
      make install
    
      #编译安装MySQL
      groupadd mysql
      useradd -r -g mysql mysql
    
      wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.5/mysql-5.5.15.tar.gz
      tar -zxvf mysql-5.5.15.tar.gz
      cd mysql-5.5.15
      cmake .
      make
      make install
    
      cd /usr/local/mysql
      chown -R mysql .
      chgrp -R mysql .
      scripts/mysql_install_db --user=mysql
      chown -R root .
      chown -R mysql data
      cp support-files/my-medium.cnf /etc/my.cnf
      bin/mysqld_safe --user=mysql &
      cp support-files/mysql.server /etc/init.d/mysql.server
    
      #设置开机启动mysql服务
      chkconfig --levels 235 mysql.server on
    
      #将mysql安装目录加入环境变量,在/etc/profile文件末尾中加入以下命令
      PATH=/usr/local/mysql/bin:$PATH
      export PATH

    3. 安装PHP

      #安装PHP5.3.7需要libxml2库
      wget ftp://xmlsoft.org/libxml2/libxml2-2.7.8.tar.gz
      tar -zxvf libxml2-2.7.8.tar.gz
      cd libxml2-2.7.8
      ./configure
      make
      make install
    
      #安装PHP5.3.7
      wget http://219.239.26.12/download/18995384/25492638/6/gz/249/252/1313725835513_508/php-5.3.7.tar.gz
      tar -zxvf php-5.3.7.tar.gz
      cd php-5.3.7
      ./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql
      make
      make install
    
      #设置php.ini
      cp php.ini-development /usr/local/php5/lib/php.ini
    
      #编辑Apache httpd.conf 文件以调用 PHP 模块。
      LoadModule php5_module modules/libphp5.so
    
      #告知 Apache 将特定的扩展名解析成 PHP。例如,让 Apache 将扩展名 .php 解析成 PHP。
      FilesMatch \.php
        SetHandler application/x-httpd-php
      /FilesMatch
    
      #启动Apache服务
      /usr/local/apache2/bin/apachectl start

    注:如果启动Apache的过程中遇到如下错误:

    httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied

      #原因是Linux有一个SELinux保护模式引起的。
    
      #解决办法
      # 1关闭SELINUX的方法:
      vi /etc/selinux/config 将SELINUX=enforcing 改成SELINUX=disabled  需要重启
    
      # 2不关闭SELINUX的方法:
      setenforce 0
      chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache2/modules/libphp5.so
      /usr/local/apache2/bin/apachectl restart
      setenforce 1
  • 相关阅读:
    阶段5 3.微服务项目【学成在线】_day04 页面静态化_17-页面静态化-模板管理-GridFS研究-存文件
    阶段5 3.微服务项目【学成在线】_day04 页面静态化_16-页面静态化-模板管理-模板制作
    阶段5 3.微服务项目【学成在线】_day04 页面静态化_15-页面静态化-模板管理-模板管理业务流程
    阶段5 3.微服务项目【学成在线】_day04 页面静态化_14-页面静态化-数据模型-远程请求接口
    阶段5 3.微服务项目【学成在线】_day04 页面静态化_13-页面静态化-数据模型-轮播图DataUrl接口
    阶段5 3.微服务项目【学成在线】_day04 页面静态化_12-页面静态化-页面静态化流程
    阶段5 3.微服务项目【学成在线】_day04 页面静态化_11-freemarker静态化测试-基于模板字符串静态化
    c语言,const被绕过
    c语言,结构体
    c语言,内存字节对齐
  • 原文地址:https://www.cnblogs.com/xiaobaicai/p/2589666.html
Copyright © 2020-2023  润新知