lnmp编译安装

lamp:
卸载php
查看是否有php

rpm -qa | grep php

卸载

yum remove php*

查看有没有php.ini的配置文件
有必要在全局下(根目录)搜索下 php.*文件,看还有没有,有则删除

卸载 mysql
查看是否有 mysql软件:

rpm -qa | grep mysql

如果有

yum remove mysql* compat-mysql
rm -rf /var/lib/mysql
rm /etc/my.cnf

再有必要在全局下(根目录)搜索下 my.*文件,看还有没有,有则删除

find . -name my.*

卸载 apache,在根目录下查找 httpd

find . -name httpd

关闭 httpd服务

/路径/httpd stop

列出httpd 相关程序包

rpm -qa|grep httpd

卸载包

rpm -e --nodeps httpd

关闭 iptables 和 SELINUX

service iptables stop
vim /etc/sysconfig/selinux

然后,修改

SELINUX=disable

上面是为安装作准备
下面是真正的安装的开始
由于linux的关系,每个软件都有一个默认的安装路径,
如:/usr/local,一般都安装在这里,此为安装的路径前,
可以通过软件的

./configure --help #查看

如果要修改安装路径,则可以

--prefix=路径

来修改,这里都用默认的,不用修改,方便查看

源码安装 mysql
安装选择的是 Source Code平台的
下载版本为 mysql-5.6.23.tar.gz
此版本要自己亲自编译,所以最好不过了
安装编译源码所需的工具和库

yum install gcc gcc-c++ ncurses-devel perl curses

其中,一般要安装两种包,类似: pcre和pcre-devel
pcre提供编译版本的库,
pcre-devel提供开发阶段的头文件和编译项目的源代码,
所以是我们所需要的

安装cmake,从http://www.cmake.org下载源码并编译安装
为了方便,把 cmake-NN.tar.gz复制到 /usr/local里

tar -xzvf cmake-NN.tar.gz
cd cmake-NN
./bootstrap
make && make install 

编译安装,根据官网
设置MySQL用户和组

新增mysql用户组

groupadd mysql

新增mysql用户

useradd -r -g mysql mysql

解压 mysql压缩包,此时方法,我把压缩包放在 /usr/local里

tar zxvf mysql-VERSION.tar.gz
cd mysql-VERSION

用cmake编译和安装

cmake .  # 此时有可能提示 ncurses-devel 没有安装,重新 yum install ncurses-devel
make && make install

修改mysql目录所有者和组

cd /usr/local/mysql
chown -R mysql .
chgrp -R mysql .

初始化mysql数据库

scripts/mysql_install_db --user=mysql

修改mysql数据库文件目录

chown -R root .
chown -R mysql data

设置安全

bin/mysqld_safe --user=mysql &

复制mysql服务启动配置文件

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

复制mysql服务启动脚本及加入PATH路径

cp support-files/mysql.server /etc/init.d/mysqld

用vim打开

vim /etc/profile

添加如下内容:

PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH

保存退出,然后

source /etc/profile

启动mysql服务

service mysqld start

启动 mysql命令登陆

ln -s /usr/local/mysql/bin/mysql /usr/bin #做个链接即可

此时,可以登陆数据库

mysql -h localhost -u root -p

密码为空
然后可以修理那些用户名
如删除危险的,设置密码...
设置密码(123456)如下

update user set Password=password(‘123456‘) where Host=‘localhost‘;

刷新权限

flush privileges;

可能会出现的错误:

Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/Server03.mylinux.com.pid). 

解决:先删除 /etc/my.cnf文件,然后
再从上面步骤中的 

scripts/mysql_install_db --user=mysql

开始到结束再重新来一次

此时mysql安装成功,lamp,lnmp都用这种方式安装 mysql

以下安装 nginx
安装编译工具

yum -y install gcc automake autoconf libtool make
yum install gcc gcc-c++
yum install openssl
yum install openssl-devel
yum install zlib
yum install zlib-devel
yum install pcre
yum install pcre-devel
安装 nginx开始,先复制压缩包到 /usr/local

tar -zxvf nginx-version.
cd nginx-varsion
./configure

如果有问题,可以换个版本用
启动nginx
/usr/local/nginx/sbin/nginx

关闭 nginx

/usr/local/nginx/sbin/nginx -s stop

nginx下安装 php

tar -zxvf php-version.tar.gz
cd php-version

./configure --enable-fpm --with-mysql --with-mysqli --with-fpm-user=用户名 --with-fpm-group=用户组名 --enable-calendar --enable-mbstring --enable-soap --enable-sockets --enable-zip --with-gd --enable-ftp --enable-libxml --with-curl --with-openssl --with-mcrypt=/usr/local/lib --with-config-file-path = /usr/local/php/php.ini

编译安装

make && make install

其中 --with-config-file-path 指定 php.ini路径,如果加上了,
在启动时就不用加上这个路径
如果提示没有哪个,就分别yum  或者 编译安装
其中的确 mcrypt可能要安装别的文件来完成
如果提示需要,编译这些时,则可下载
libmcrypt(libmcrypt-2.5.8.tar.gz ):
mcrypt(mcrypt-2.6.8.tar.gz ):
mhash(mhash-0.9.9.9.tar.gz ):

先安装 libmcrypt,再mhash,最后才mcrypt
步骤基本是 解压,安装,如

tar -zxvf xxxx.gz.gz
cd xxxx
./configure
make && make install

当安装 mcrypt时,会提示 by modifying LD_LIBRARY_PATH,
则用以下方式指定

LD_LIBRARY_PATH=/usr/local/lib ./configure
make && make install

复制文件到指定的位置

cp php.ini-production /usr/local/php/php.ini #配置文件路径
cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf
cp sapi/fpm/php-fpm /usr/local/bin

打开 php.ini

vim /usr/local/php/php.ini

定位到 cgi.fix_pathinfo= 并将其修改为如下

cgi.fix_pathinfo=0

打开 php-fpm.conf文件

vim /usr/local/etc/php-fpm.conf

查看

; Note: The user is mandatory. If the group is not set, the default user‘s group
;       will be used.
user = xxxx
group = xxxx

如果用户和组不存在,增加一个存在,或在 系统中用 useradd, groupadd 增加

启动 php-fpm 时,得加上 php.ini的路径(可以先查看 php-fpm文件在哪里),
每次启动时,一定得加上,不然用不到这里的配置文件

php-fpm -c /usr/local/php/php.ini

如果在编译时加入了 --with-config-file-path参数,则直接用

php-fpm 

不用再加上后面的参数

如果出现 9000占用

killall php-fpm

然后重启

php-fpm -c /usr/local/php/php.ini

配置nginx,使其支持 php(一定要检查路径)

vim /usr/local/nginx/conf/nginx.conf

接下来,参考php手册即可

修改默认的 location 块,使其支持 .php 文件

location / {
    root   html;
    index  index.php index.html index.htm;
}

下一步配置来保证对于 .php 文件的请求将被传送到后端的
PHP-FPM 模块, 取消默认的 PHP 配置块的注释,
并修改为下面的内容

location ~* \.php$ {
    fastcgi_index   index.php;
    fastcgi_pass    127.0.0.1:9000;
    include         fastcgi_params;
    fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;
    fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
}

重启 Nginx

/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx

为了能够实现重启php,
设置 php-fpm.conf中的参数,开启pid的位置

;pid=run/php-fpm.pid

修改为

pid=run/php-fpm.pid

然后可以先停止 php,其中 php-fpm.pid的路径要正确

kill -INT `cat /usr/local/php/run/php-fpm.pid`

启动 php

php-fpm -c /usr/local/php/php.ini

  

时间: 2024-08-26 19:18:36

lnmp编译安装的相关文章

LNMP编译安装遇到问题归总

LNMP编译安装遇到问题归总 1.错误:configure: error: freetype-config not found. 解决:yum install freetype-devel 2.错误:configure: error: libevent >= 1.4.11 could not be found  解决:yum -y install libevent libevent-devel 3.错误:configure: error: Please reinstall the mysql d

LNMP编译安装之msyql安装--图文详解

LNMP编译安装之msyql安装--图文详解 1.前言 本次安装采用源码安装,主要资源包从官网下载,次要依赖则使用yum进行安装,本篇只涉及mysql的安装,msyql远程登录,不涉及mysql具体配置.该教程纯属安装,不涉及任何重要知识点,老少皆宜. 2.安装步骤 2.1.下载boost(只下载不安装) wget http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz 2.2.解压bosot t

LNMP编译安装之nginx安装--图文详解

LNMP编译安装之nginx安装--图文详解 1.前言 本次安装采用源码安装,主要资源包从官网下载,次要依赖则使用yum进行安装,本篇只涉及nginx的安装,不涉及nginx的配置,对应nginx如何访问php,本篇也不涉及.该教程纯属安装,不涉及任何重要知识点,老少皆宜. 2.安装步骤 nginx官网:http://nginx.org/en/download.html 2.1.下载nginx wget http://nginx.org/download/nginx-1.12.0.tar.gz

LNMP编译安装之nginx关联php--图文详解

LNMP编译安装之nginx关联php--图文详解 1.前言 之前已经介绍了nginx,php,mysql的编译安装过程,但nginx和php的关联没有涉及,导致网页不能正常使用php功能,所有本编介绍如何将nginx和php进行关联,使*.php文件可以正常在浏览器访问. 2.准备步骤 2.1.修改php-fpm配置文件 cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.confcp /usr/loc

LNMP编译安装之php安装--图文详解

LNMP编译安装之php安装--图文详解 1.前言 本次安装采用源码安装,主要资源包从官网下载,次要依赖则使用yum进行安装,本篇只涉及php的安装,不涉及php的配置,对应nginx如何访问php,本篇也不涉及.该教程纯属安装,不涉及任何重要知识点,老少皆宜. 2.安装步骤 php官网:http://www.php.net/ 2.1.下载php wget  http://php.net/get/php-7.1.7.tar.gz/from/a/mirror 2.2.解压php安装包 tar -z

LNMP编译安装(centos7+nginx1.9+mysql5.6+php5.5)

LNMP编译安装 # 需先配置IP # 软件包的路径 /usr/local/src yum install -y libjpeg-devel libpng-devel freetype-devel curl-devel python-devel curl-devel gcc gcc-c++ bison-devel  ncurses-devel lrzsz openssl-devel libjpeg-devel libpng-devel freetype-devel curl-devel  pyt

linux下nginx,mysql,php(lnmp)编译安装

关闭SELINUX vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉 SELINUX=disabled #增加 :wq!  #保存退出 setenforce 0 #使配置立即生效 mysql 5.5.28安装 安装路径:/usr/local/mysql数据库路径:/usr/local/mysql/data/ mysql从5.5版本开始,不再使用./configure编译,而是使用cmake编译器,具

基于新版本LNMP编译安装+wordpress搭建个人博客

一.软件介绍 LNMP代表:Linux系统下的Nginx+Mysql+Php的网站构架技术. Linux系统:免费使用和自由传播的类Unix操作系统,稳定可靠. Nginx:高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务. Mysql: 关系型数据库管理系统,本次使用mariadb软件,它是mysql的一个分支,由开源社区维护. Php: 超文本预处理器,是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,利于学习,使用广泛,主要适用于Web

linux lnmp编译安装

关闭SELINUX vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉 SELINUX=disabled #增加 :wq!  #保存退出 setenforce 0 #使配置立即生效 mysql 5.5.28安装 安装路径:/usr/local/mysql数据库路径:/usr/local/mysql/data/ mysql从5.5版本开始,不再使用./configure编译,而是使用cmake编译器,具