zoukankan      html  css  js  c++  java
  • 源码编译安装LAMP

    Linux+Apache+MySQL+PHP

     

    Yum安装:httpd http-devel mysql-server mysql-devel php php-devel

    YUM安装方式很简单就不说了。

    源码安装

    一、            Apache

    安装包httpd-2.2.27.tar.gz.

    安装准备:

    安装优化库文件:apr apr-util apr-devel apr-util-devel (yum安装即可)

    [root@LingShu ~]# yum install -y apr apr-util

    [root@LingShu ~]# yum install -y apr-devel apr-util-devel

    下载地址:

    wget http://archive.apache.org/dist/httpd/httpd-2.2.27.tar.gz

    1、解压安装包

    tar xzf httpd-2.2.27.tar.gz

    2、预编译

    进入解压后的目录

    ./configure --prefix=/document/apache --enable-so --enable-rewrite //指定安装目录。

    3、编译

    make

    4、安装

    make install

    5、配置

    配置文件目录,一般为安装目录下的 conf/

    发布网站的目录,在安装目录下的 htdocs/

    启动服务,脚本再bin/apachectl

    [root@LingShu htdocs]# /document/apache/bin/apachectl start

    启动时出现以下提示

    httpd: Could not reliably determine the server's fully qualified domain name, using LingShu.cn for ServerName  //这个提示没影响。解决办法:进入httpd.conf配置文件找到ServerName 把前面注释去掉,后面加个域名,可以是localhost:80

    查看是否有进程ps aux | grep httpd

    确认80端口

    [root@LingShu htdocs]# netstat -an | grep 80    或者-ntl   t:tcp

    关闭防护墙iptables -F

    访问

    二、            MySQL

      1.下载解压安装包

    Wget -c http://downloads.mysql.com/archives/mysql-5.1/mysql-5.1.63.tar.gz

    加-c 表示断点续传。

    tar -xzf mysql-5.1.63.tar.gz

      2.编译和安装

    cd mysql-5.1.63/     进入解压后的目录

    ./configure --prefix=[安装目录] --enable-assembler  预编译

    make        编译(过程有点慢,视机器性能而定)

    make install       安装

    注:如果预编译报错,应该是开发环境的问题,需要装ncurses

    yum -y install ncurses-devel  

    1. 将mysql配置为系统服务

    cp /document/mysql/share/mysql/my-medium.cnf /etc/my.cnf

    cp /document/mysql/share/mysql/mysql.server  /etc/rc.d/init.d/mysqld

    chkconfig –add mysqld

    chkconfig –-level 345 mysql on

    /etc/init.d/mysqld  restart

    1. 初始化mysql

    cd /document/mysql   进入安装目录

    useradd mysql    创建mysql用户(安全起见可以指定为nologin)

    chown -R mysql:mysql /document/mysql  更改安装目录的属主和属组

    /document/mysql/bin/mysql_install_db  --user=mysql   初始化

    ./mysql_install_db --datadir=../var --user=mysql 生不成var目录时用这条命令

    chown -R mysql:mysql  /document/mysql/var

    /document/mysql/bin/mysqld_safe --user=mysql &     启动mysql

    1. 登陆

    默认初始密码grep 'temporary password' /var/log/mysqld.log

    /document/mysql/bin/mysqladmin -u root password "root"       #设置初始密码

    /document/mysql/bin/mysql -uroot -proot       #直接输入路径登陆。

    1. 忘记密码强制登陆

    /etc/init.d/mysqld stop   关闭进程

    /document/mysql/bin/mysqld_safe --skip-grant-tables &

    跳过权限启动

    /document/mysql/bin/mysql   直接登陆

    创建远程用户:

    grant all privileges on *.* to admin@"%" identified by "password";

    all privileges 表示所有权限

    *.* 表示所有库下所有表

    admin 用户名

    % 所有主机地址

    identified by 关键字,后跟密码

    password 密码

    三、            PHP

    下载软件包:wget http://mirrors.sohu.com/php/php-5.3.28.tar.bz2

    解压:对于bz2结尾的压缩包用 jzf参数。

    依赖包:libxml2、libxml2-devel

    编译时指定参数:

    ./configure --prefix=/var/local/php5 --with-config-file-path=/var/local/php5/etc  --with-apxs2=/var/local/apache/bin/apxs --with-mysql=/var/local/mysql/

    四、            Apache+PHP整合

    整合apache+PHP环境。修改httpd.conf配置文件,然后加入如下语句:

    LoadModule php5_module/libphp5.so

    AddType       application/x-httpd-php .php    #注意加空格

     

    Directoryindex index.php index.html(把index.php加入index.html之前)

     

    然后在/var/local/apache/htdocs目录下创建index.php测试页面。如下:

    <?php

    phpinfo();

    ?>

    重启apache服务。通过浏览器访问,出现php引导页面表示成功。

    五、            安装论坛    

    测试网站下载路径:

    http://download.comsenz.com/DiscuzX/3.1/Discuz_X3.1_SC_UTF8.zip

    1、解压文件到apache/htdocs目录

    Zip包解压命令:unzip [压缩包] -d [解压目录]

    [root@LingShu htdocs]# unzip  /soft/Discuz_X3.1_SC_UTF8.zip  -d ./

    2、把三个目录中的upload目录下的文件移到htdocs目录。

    [root@LingShu htdocs]# mv upload/* ./

    mv:是否覆盖"./index.php"? y

    3、对目录进行授权

    [root@LingShu htdocs]# chmod -R 777 data/ uc_server/ config/ uc_client/

    4、通过浏览器进行配置,期间需要创建数据库和用户

    ps:关闭本地防火墙和SELinux

  • 相关阅读:
    共享内存
    利用消息队列实现ECHO_SRV
    LINUX学习:System V消息队列
    linux:利用socketpair来在进程间传递描述符
    react传参
    ajax、axios、fetch
    js 深拷贝和浅拷贝实现
    css----px、rem、em、vw、vh、vm
    Sass、Less 和 Stylus区别
    箭头函数和普通函数对比
  • 原文地址:https://www.cnblogs.com/lingshu/p/8940761.html
Copyright © 2011-2022 走看看