• CentOS编译安装lamp


    LAMP环境搭建(编译安装CentOS+httpd2.2+mysql5.5+php5.4
    首先准备以下压缩包


    <ignore_js_op> 

    1)编译安装apache

    1、配置防火墙,开启80端口、3306端口
    执行以下命令:
    #vi /etc/sysconfig/iptables
    添加以下两条规则到22端口这条规则的下面
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许3306端口通过防火墙

    2、确定IP
    [root@www ~]# ifconfig eth0
    3、确定主机名
    [root@www ~]#hostname
    www.htu.com
    4  卸载httpd,并且将源码包解压
    rpm -e httpd httpd-manual webalizersubversion mod_python mod_ssl mod_perl php php-common mysql dovecot –nodeps
    tar xzf httpd-2.2.17.tar.gz-C /usr/src/            //将源码包解压到了/usr/src




    5、编译安装apache
    [root@wwwhttpd-2.2.17]# ./configure --prefix=/usr/local/httpd--enable-so --enable-rewrite --enable-charset-lite && make &&make install
     
    6、查看安装的结果
     
    [root@www ~]# ls /usr/local/httpd/
    bin  build cgi-bin  conf  error htdocs  icons  include lib  logs  man manual  modules
     
    那么httpd的执行目录就在/usr/local/httpd/bin/这个目录下,但是这样我会觉得很冗余,所以用以前讲过的ln来连接
    [root@www httpd]#ln -s /usr/local/httpd/bin/* /usr/local/bin/
    [root@www ~]#httpd -v
     
     
    7、添加服务,添加服务识别配置
    [root@www ~]# cp/usr/local/httpd/bin/apachectl /etc/init.d/httpd
    Vi  /et       c/init.d/httpd
    #chkconfig: 35 8515
    #description:httpd start server
     
    [root@www ~]#chkconfig--add httpd
    [root@www ~]# chkconfig --list httpd
    httpd                0:关闭  1:关闭  2:关闭  3:启用  4:关闭  5:启用  6:关闭
    [root@www ~]# chkconfig--level 35 httpd on
    编辑httpd的主配置文件添加域名
     
    Vi /usr/local/httpd/conf/httpd.conf
    ServerName www.htu.com:80
     
    检查httpd的语法错误
    [root@www ~]# /usr/local/httpd/bin/apachectl -t
    Syntax OK
     
    9       启动httpd服务
    /etc/init.d/httpdstart
    验证是否开启服务
    [root@www ~]# netstat -natp | grep httpd
    tcp        0     0 :::80                      :::*                        LISTEN      29040/httpd         
     
    10    测试时候成功
    <ignore_js_op> 
    (2)编译安装mysql1  准备工作: 卸载rpm的mysql-server
    [root@www/]# rpm-e mysql-server –nodeps
    [root@www /]#useradd -M -u 49 -s /sbin/nologin mysql    //创建mysql运行用户MySQL 
    从5.5开始改用cmake来编译源码代替./configure,
    在编译安装 MySQL5.5.x 之前,需要最少安装的包有:
    gcc4.4.6、gcc-c++、cmake、ncurses-devel、bison
    这时只需你的Linux系统安装cmake、ncurses-devel、bison,
    [root@www ~]# yum install gcc gcc-c++  
    [root@www ~]#yum install ncurses-devel
      首先要先去网上下载一个cmake软件
    一、安装 cmake --前提软件。
    [root@www~]# tar zxvf cmake-2.8.5.tar.gz  -C /usr/src   (解压)
    [root@www ~]# cd cmake-2.8.5                 (进入目录)
    [root@www cmake-2.8.5  ]#./configure –prefix=/usr/local/cmaked(编译前配置—prefix=制定路径为/usr/local/cmaked/)
    [root@www cmake-2.8.5 ]# gmake && gmake install          (编译安装)
    cmake安装完成cmake -D<变量>=<值>
    2.安装mysql5.5.20

    [root@www ~]# tar zxvf mysql-5.5.20.tar.gz  -C /usr/src     (解压)
    [root@www ~]# cd mysql-5.5.20       (进入目录)
    [root@www mysql-5.5.20]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysqld-DMYSQL_UNIX_ADDR=/tmp/mysql.sock 
    -DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci  -DWITH_EXTRA_CHARSETS=all-DWITH_INNOBASE_STORAGE_ENGINE=1
    -DWITH_ARCHIVE_STORAGE_ENGINE=1-DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1
    -DWITH_SSL=yes  -DENABLED_LOCAL_INFILE=1      (编译前配置) 
    [root@www mysql-5.5.20]#make  && make install(编译安装)

    注意:如果提示编译时错误cmake:command not found输入一下命令export PATH=/usr/local/cmake/binPATH   #PATH=你的camke编译指定路径
    #这里编译cmake的时候没有指定路径  如果有路径就执行上面的命令
    安装后调试 建立配置文件,这里我们复制已有模板
    [root@www mysql-5.5.20]#cp support-files/my-medium.cnf /etc/my.cnf
    mysql用户初始化数据库(/usr/local/mysqld/scripts)




    4.
    初始化数据库
    [root@www ~]# 
    /usr/local/mysqld/scripts mysql_install_db --user=mysql 
    FATAL ERROR: Could not find ./bin/my_print_defaults
    If you compiled from source, you need to run 'make install' to 
    copy the software into the correct location ready for operation. 
    If you are using a binary release, you must either be at the top
    level of the extracted archive, or pass the --basedir option 
    pointing to that location. 
    #
    初始化碰到这个错误是因为没有指定安装目录以及存放数据的目录,
    [root@www ~]#./mysql_install_db --user=mysql --basedir=/usr/local/mysqld/--datadir=/usr/local/mysqld/data/
    5.修改数据库文件的属主 
    [root@www /]# chown -R root:mysql/usr/local/mysqld/
    [root@www/]# chown -R mysql /usr/local/mysqld/data/
    6.优化mysql程序目录的路径
    [root@wwwbin]# ln -s /usr/local/mysqld/bin/* /usr/local/bin/
    [root@www bin]# ln -s /usr/local/mysql/lib/* /usr/lib
    [root@www bin]# ln-s /usr/local/mysql/include/mysql/* /usr/include/
    然后要做的是添加系统服务,这样就很方便我们开启和关闭了
    [root@www bin]# cp/usr/src/mysql-5.5.20/support-files/mysql.server /etc/rc.d/init.d/    //将源码包中的服务启动脚本复制到自动启动的路径下
    [root@www bin]#chmod a+x/etc/rc.d/init.d/mysql.server  (给执行服务运行权限)
    [root@www bin]#chkconfig –add mysql.server            (加服务)
    现在可以很方便的开启和关闭,也能看到mysqld的端口号3306 那么在默认情况下我们可以用root登录,没有密码
    [root@www/]#  PATH=$PATH:/usr/bin/   指定命令搜索的路径,这样就能找到mysqladmin的命令了
    [root@www/]#mysqladmin –u –p “htuidc”  


    <ignore_js_op> 
    (3)编译安装php准备工作和安装1 首先要卸载php相关的rpm包以免后期冲突     (没有的话就不用卸载了-)
    rpm -e php php-cliphp-ldap php-common php-mysql –nodeps
    安装 libmcrypt
    [root@s2 /usr/src]# cd /usr/src/libmcrypt-2.5.8/
    [root@s2 libmcrypt-2.5.8]#./configure
    [root@s2 libmcrypt-2.5.8]#make && make install
    [root@s2 libmcrypt-2.5.8]#ln -s /usr/local/lib/libmcrypt.* /usr/lib  
    安装mhash
    [root@www  /usr/src]# tar xzf mhash-0.9.9.9.tar.gz-C /usr/src/
    [root@www /usr/src]# cd /usr/src/mhash-0.9.9.9/
    [root@www mhash-0.9.9.9]#./configure
    [root@www mhash-0.9.9.9]#make && make install
    [root@www mhash-0.9.9.9]ln-s /usr/local/lib/libmhash* /usr/lib 
    安装mcrypt   
    (通过rpm或者是yum来装一个libxml2-devel)
    Yum –y install libxml2-delvel
    rpm –ivh libxml2-delvel
    [root@www /usr/src]# tar xzf mcrypt-2.6.8.tar.gz-C /usr/src/
    [root@www /usr/src]# cd /usr/src/mcrypt-2.6.8/
    [root@www mcrypt-2.6.8]#./configure
    [root@www mcrypt-2.6.8]#make && make install 
    安装php
    [root@www /usr/src]# tar xzf php-5.3.6.tar.gz-C /usr/src/
    [root@www /usr/src # cd /usr/src/php-5.3.6/
    [root@wwwphp-5.3.6]#./configure --prefix=/usr/local/php5 --with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs 
    --with-mysql=/usr/local/mysqld/ --with-config-file-path=/usr/local/php5 --enable-mbstring --prefix:设置php程序的安装路径-
    -enable-mbstring:设置php支持多字节字符串--with-apxs2:设置apache服务器提供的apxs模块支持程序的文件路径位置
    --with-configure-file-path:设置php程序的配置文件所在位置 
    [root@www php-5.3.6]#make && make install
    2、复制php.ini配置文件
    [root@www /]# cp/usr/src/php-5.3.6/php.ini-development  /usr/local/php5/php.ini 
    优化zendguardloader
    [root@www 1234]#tar xzf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz -C /usr/src/ 
    [root@www /]# cd/usr/src/ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x/
    [root@wwwphp-5.3.x]# cp ZendGuardLoader.so /usr/local/php5/lib/php
    拷贝优化模块到
    php模块文件夹然后修改php.ini
    Vi/usr/local/php5/php.ini

    zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so

    zend_loader.enable=1

    [root@wwwphp-5.3.x]# vi /usr/local/httpd/conf/httpd.conf

    AddTypeapplication/x-httpd-php .php       //
    这个是要手动添加的php功能
    <IfModuledir_module>
        
    DirectoryIndex index.html index.php    //
    添加网页支持php
    </IfModule>

    修改之后注意重启使之生效

    setenforce0  
    关闭Selinux
    [root@wwwphp-5.3.x]# /etc/init.d/httpd restart

    、测试php运行环境编译php网页测试文件
    [root@www htdocs]#vi test1.php 
    <?php
    phpinfo();
    ?>
    <ignore_js_op> 
    (2个测试页最好手动输入 )

    [root@www htdocs]#vi test2.php 
    <?php
    $link=mysql_connect('localhost','root','htuidc');
    if($link)
      echo "success";
    ?>
    <ignore_js_op> 

    <ignore_js_op>

  • 相关阅读:
    关系型数据库——主键&外键的
    JSON运用——PHP中使用json数据格式定义字面量对象的方法
    JSON.parse与eval的区别
    css中那些属性可以被继承
    js笔记 -- toString() 和String()
    MYSQL IFNULL函数的使用
    mysql临时表产生的执行效率问题改进(转)
    mysql中concat 和 group_concat()的用法
    转载mysql数据库配置优化
    浅谈MySql的存储引擎(转)
  • 原文地址:https://www.cnblogs.com/yangxiaofei/p/5045581.html
Copyright © 2020-2023  润新知