CentOS6 下的PHP,HTTPD,MYSQL等环境搭建

腾讯云重装了CentOS系统,记录下重装后的环境搭建步骤。
#yum install -y gcc g++ gcc-c++

新建用户
#useradd sxin
#passwd sxin

我习惯在/usr/local下建立自己的目录然后把环境全部放在此目录下

#mkdir /usr/local/sxin
#chown sxin:sxin /usr/local/sxin

切换到sxin用户

$cd ~
$mkdir downloads
$mkdir downloads/php7 downloads/httpd24 downloads/mysql57 downloads/tools
下载PHP7,HTTPD24,MYSQL57
$wget http://cn2.php.net/distributions/php-7.0.8.tar.gz

$wget http://nginx.org/download/nginx-1.11.1.tar.gz
$wget http://zlib.net/zlib-1.2.8.tar.gz

$wget http://apache.fayea.com//apr/apr-1.5.2.tar.gz
$wget http://apache.fayea.com//apr/apr-util-1.5.4.tar.gz
$wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz
$wget http://mirrors.hust.edu.cn/apache//httpd/httpd-2.4.20.tar.gz

$wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.13.tar.gz
$wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.13.tar.gz
编译安装APR
$./configure --prefix=/usr/local/sxin/tools/apr && make && make install
编译安装APR-Util
$./configure --prefix=/usr/local/sxin/tools/apr-util --with-apr=/usr/local/sxin/tools/apr && make && make install
编译安装PCRE
$./configure --prefix=/usr/local/sxin/tools/pcre && make && make install
编译安装ZLib
$./configure --prefix=/usr/local/sxin/tools/zlib && make && make install
编译安装Nginx
$ ./configure --prefix=/usr/local/sxin/nginx --with-pcre=/home/sxin/downloads/tools/pcre-8.39 --with-zlib=/home/sxin/downloads/tools/zlib-1.2.8 && make && make install
注:这里引用的pcre,zlib的是源码目录
做中转,上传大小限制:
client_max_body_size 8M;  
server {
        listen       80;
        server_name  localhost;
**********
        location / {
            proxy_redirect off;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass    http://ip:port/;
        }
**********
}
编译安装Apache24
$./configure --prefix=/usr/local/sxin/httpd24 --with-apr=/usr/local/sxin/tools/apr --with-apr-util=/usr/local/sxin/tools/apr-util/ --with-pcre=/usr/local/sxin/tools/pcre/ && make && make install
编译安装Mysql57
#yum install -y cmake git ncurses-devel

$cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/sxin/mysql -DSYSCONFDIR=/etc/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_DATADIR=/usr/local/sxin/mysql/data -DWITH_BOOST=boost -DCURSES_LIBRARY=/usr/lib64/libncurses.so -DCURSES_INCLUDE_PATH=/usr/include && make && make install

$./mysqld --initialize --user=sxin --basedir=/usr/local/sxin/mysql --datadir=/usr/local/sxin/mysql/data

mysql -u root -p连接时
报错 Segmentation fault
修改方法如下:
在MySQL的源代码中,找到这个文件 cmd-line-utils/libedit/terminal.c ,找到这一行 char buf[TC_BUFSIZE]; 将其注释,
然后,在其附近找到变量 area  ,将其值修改为 NULL ,也就是 area = NULL.
protected int
terminal_set(EditLine *el, const char *term)
{
        int i;
        //char buf[TC_BUFSIZE];
        char *area;
        const struct termcapstr *t;
        sigset_t oset, nset;
        int lins, cols;

        (void) sigemptyset(&nset);
        (void) sigaddset(&nset, SIGWINCH);
        (void) sigprocmask(SIG_BLOCK, &nset, &oset);

        area = NULL;
重新编译安装
$./mysql -u root -p
$ALTER USER USER() IDENTIFIED BY ‘123’ #修改密码
允许所有主机访问
Grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option;
flush privileges; 
编译安装PHP7
#yum install -y libxml2 libxml2-devel.x86_64
$./configure --prefix=/usr/local/sxin/php7 --with-config-file-path=/usr/local/sxin/php7/conf --with-apxs2=/usr/local/sxin/httpd24/bin/apxs --with-pdo-mysql=/usr/local/sxin/mysql --with-zlib-dir=/usr/local/sxin/tools/zlib/ && make &&make install
配置环境变量

#echo 'PATH=$PATH:/usr/local/sxin/mysql/bin/:/usr/local/sxin/httpd24/bin:/usr/local/sxin/nginx/sbin:/usr/local/sxin/php7/bin' >> /etc/profile
#source /etc/profile

打包

现在虽然环境搭建好了,不过问题又来了,如果我又重装系统了 那就要再重新全部来一次。。。太麻烦。 于是我有了一个想法。 然后写一个shell,下次如果再重装系统 我只要执行shell 然后它会全部自动下载,编译安装。那就爽了~。
详情请参考我的另外一篇博文: SHELL实现CentOS下自动下载,编译安装LAMP

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值