linux 手动源码安装lnmp(亲测)

时间:2021-12-14 01:30:32

linux 手动源码安装lnmp笔记(亲测)<pre>先安装这2个yum install gccyum install g++</pre>
<pre>
先在linux 安装libiconv 源码编译安装PHP有用
#wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz#tar xvf libiconv-1.14.tar.gz#cd libiconv-1.14# ./configure --prefix=/usr/local/libiconv# make# make install</pre>

<pre>1 先去PHP官网下个 php-5.6.29.tar.gz  wget http://cn2.php.net/distributions/php-5.6.29.tar.gz2 ./configure --prefix=/usr/local/php   --with-iconv=/usr/local/libiconv  --enable-sysvsem --with-curl --enable-mbregex  --enable-mbstring --with-mcrypt --with-gd --with-openssl --with-mhash --enable-sockets --with-xmlrpc --with-zlib --enable-fpm --with-config-file-path=/usr/local/php/etc 
 --with-iconv=/usr/local/libiconv 这个路径就是上面libiconv安装的路径哈--with-mcrypt没指定路径就 就是说明PHP编译的时候回安装 指定的就直接用指定的

3 make 生成o文件 如果出现  undefined reference to `libiconv' 那就是 ./configure --prefix没设置好 make clean 后重新配置./configure ............
4 make install  安装

输入 php -v[root@iZbp11xke8lva3xk8b3qtnZ ~]# php -vPHP 5.6.29 (cli) (built: Jan  5 2017 10:37:51) Copyright (c) 1997-2016 The PHP GroupZend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
还要把php.ini放进去
先该下php.ini配置设置下默认市区date.timezone = "Asia/Shanghai"
cp /home/php-5.6.29/php.ini-production /usr/local/php/etc/php.ini
下面配置php-fpm<pre>进入/usr/local/php/etc目录cp php-fpm.conf.default php-fpm.conf</pre>
然后运行php-fpm -t 有没有报错 没有报错就行了
php-fpm直接启动就行netstat -ntlp查看端口 是否启动

</pre>
源码安装mysql<pre>(1)先安装cmake(mysql5.5以后是通过cmake来编译的)[root@ rhel5 local]#tar -zxv -f cmake-2.8.4.tar.gz[root@ rhel5 local]#cd cmake-2.8.4[root@ rhel5 cmake-2.8.4]#./configure[root@ rhel5 cmake-2.8.4]#make[root@ rhel5 cmake-2.8.4]#make install
/usr/local/bin/cmake  --version 测试有没有安装成功

(2)创建mysql的安装目录及数据库存放目录[root@ rhel5~]#mkdir -p /usr/local/mysql                 //安装mysql [root@ rhel5~]#mkdir -p /usr/local/mysql/data            //存放数据库
(3)创建mysql用户及用户组[root@ rhel5~]groupadd mysql[root@ rhel5~]useradd -r -g mysql mysql
(4)安装mysql# wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.34.tar.gz#tar zxvf mysql-boost-5.7.17.tar.gz#cd mysql-5.6.34#/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1[root@ rhel5 mysql-5.5.10]#make [root@ rhel5 mysql-5.5.10]#make install

设置目录权限# cd /usr/local/mysql# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql# chown -R mysql:mysql datacp support-files/my-medium.cnf /etc/my.cnf //将mysql的启动服务添加到系统服务中
修改下my.cnf配置文件 添加如下 1个是mysql命令连接 1个是客户端的链接 因为都是socket连接mysql所以指定下socket路径<pre>[mysqld]socket=/tmp/mysql.sock[client]socket=/tmp/mysql.sock</pre>

创建系统数据库的表# cd /usr/local/mysql# scripts/mysql_install_db --user=mysql

# cd /usr/local/mysql
# ./bin/mysqld_safe --user=mysql &   //启动MySQL,但不能停止
启动日志写在此文件下:/usr/local/mysql/data/localhost.err

设置环境变量[root@ rhel5~]# vi /root/.bash_profile
在PATH=$PATH:$HOME/bin添加参数为:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
#source /root/.bash_profile

关闭MySQL服务# mysqladmin -u root -p root//这里MySQL的root用户还没有配置密码,所以为空值。需要输入密码时,直接点回车键即可。

[root@ rhel5 mysql]# cp support-files/mysql.server  /etc/init.d/mysql //将mysql的启动服务添加到系统服务中可以使用如下命令# service mysql start  # service mysql stop# service mysql restart
修改MySQL的root用户的密码以及打开远程连接# mysql -u root mysql
mysql>use mysql;mysql>desc user;mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";  //为root添加远程连接的能力。mysql>update user set Password = password('xxxxxx') where User='root';mysql>select Host,User,Password  from user where User='root'; mysql>flush privileges;mysql>exit
重新登录:mysql -u root -p
若还不能进行远程连接,则关闭防火墙[root@ rhel5~]# /etc/rc.d/init.d/iptables stop
</pre>
下面安装nginx 安装下面软件只要安装目录没有文件就行先安装openssl软件<pre>wget http://down1.chinaunix.net/distfiles/openssl-1.0.0c.tar.gztar zxvf openssl-1.0.0c.tar.gzcd openssl-1.0.0c
./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl/confmake && make install#检验安装/usr/local/openssl/bin/openssl version -a </pre>
再安装安装pcre软件<pre>wget https://ncu.dl.sourceforge.net/project/pcre/pcre2/10.22/pcre2-10.22.tar.gztar zxvf pcre2-10.22.tar.gzcd pcre2-10.22./configure --prefix=/usr/local/pcre/make & make install</pre>
再安装安装zlib软件<pre>wget http://jaist.dl.sourceforge.net/project/libpng/zlib/1.2.10/zlib-1.2.10.tar.gztar zxvf zlib-1.2.10.tar.gzcd zlib-1.2.10./configure --prefix=/usr/local/zlib/make && make install</pre>

接下来安装nginx<pre>#添加www用户和组groupadd wwwuseradd -g www www

#创建网站根目录mkdir -p     /var/www/root/chmod -R 775 /var/www/root/
#下载wget http://nginx.org/download/nginx-1.10.2.tar.gz#解压tar zxvf nginx-1.10.2.tar.gz#进入安装目录cd nginx-1.10.2
mkdir -p /home/pcre2-10.22/pcre210/.libscp /usr/local/lib/libpcre.a /home/pcre2-10.22/libpcre.acp //usr/local/lib/libpcre.a /home/pcre2-10.22/libpcre.lacp /usr/local/lib/libpcre.a /home/pcre2-10.22/.libs/libpcre.acp /usr/local/lib/libpcre.a /home/pcre2-10.22/.libs/libpcre.la
#配置(使用openssl、pcre、zlib的源码路径不是安装好的路径 切记!)./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_ssl_module --with-openssl=/home/openssl-1.0.0c --with-pcre=/home/pcre2-10.22 --with-zlib=/home/zlib-1.2.10 --with-http_stub_status_module --with-threads

#编译安装 (ps:安装可能pcre会报错  继续看看这个文件/home/pcre2-10.22/.libs/还有没有cp /usr/local/lib/libpcre.a /home/pcre2-10.22/.libs/libpcre.acp /usr/local/lib/libpcre.a /home/pcre2-10.22/.libs/libpcre.la)make && make install
#验证/usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.10.2built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) built with OpenSSL 1.0.0c 2 Dec 2010TLS SNI support enabledconfigure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_ssl_module --with-openssl=/home/openssl-1.0.0c --with-pcre=/home/pcre2-10.22 --with-zlib=/home/zlib-1.2.10 --with-http_stub_status_module --with-threads

修改配置文件
vi /usr/local/nginx/conf/nginx.conf
改默认跟目录和  默认首页location / {            root   /home/www;            index  index.php index.html index.htm;        }

将其中的
        location / {            root   html;            index  index.php index.html index.htm;        }改为
        location / {            root   /home/www;            index  index.php index.html index.htm;        }
这个也要改成 访问PHP 让php-fpm端口处理 $document_root 代表当前请求在root指令中指定的值   location ~ \.php$ {            root           /home/www;            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;            include        fastcgi_params;        }
 charset utf-8; 要改成utf-8然后重启nginx
切记/home/www这个目录一定要设置访问权限!!!! 
启动、重启
#启动:/usr/local/nginx/sbin/nginx 
#重启/usr/local/nginx/sbin/nginx -s reload停止
kill -9 nginx进程号
测试#测试端口 netstat -ntlp //看看80端口有没有运行#浏览器中测试  http://ip:80
ps:原理 nginx80端口接收到文件 会发到php-fpm端口 让他来解析处理PHP 并不是nginx端口解析处理php的

</pre>
看phpinfo Loaded Configuration File 如果none那就执行 给他执行加载的php.ini<pre>/usr/local/php/sbin/php-fpm -y /usr/local/php/etc/php-fpm.conf -c /usr/local/php/etc/php.ini</pre>

然后看没有mysql和mysqli扩展模块 那就直接进入php源码包ext里面  安装扩展 这样才能使用php函数链接mysqlps:装mysql前先yum -y install mysql-devel

接下来安装phpmyadminwget https://files.phpmyadmin.net/phpMyAdmin/3.5.8.2/phpMyAdmin-3.5.8.2-all-languages.zipunzip phpMyAdmin-3.5.8.2-all-languages.zipcd phpMyAdmin-3.5.8.2-all-languages

linux 手动源码安装lnmp(亲测)的更多相关文章

  1. Linux中源码安装编译Vim

    Linux中源码安装编译Vim Linux下学习工作少不了编辑器,Vim能使你的工作效率成倍的提高.在Ubuntu上安装vim使用命令直接安装很简单.但有时还是需要自己手动编译安装.例如: vim中的 ...

  2. linux下源码安装netcat

    linux下源码安装netcat http://blog.chinaunix.net/uid-20783755-id-4211230.html 1,下载netcat源码,netcat-0.7.1-13 ...

  3. CENTOS6&period;5源码安装LNMP

    CENTOS6.5源码安装LNMP 一.安装前准备 ########################################################################## ...

  4. CentOS7(Linux)源码安装Redis

    介绍 项目中经常需要用到Redis做缓存数据库,可是还有小伙伴不会在Linux上安装Redis,毕竟我们开发的项目都是要在服务器上运行的,今天就来讲讲如何在CentOS7环境使用源码进行安装Redis ...

  5. 源码安装LNMP与搭建Zabbix

    系统环境:CentOS release 6.5 (Final) 搭建Zabbix 3.0对PHP环境要求>= 5.4 一.下载NMP的软件包: N:wget http://nginx.org/d ...

  6. Linux MySQL源码安装缺少ncurses-devel包

    在Red Hat Enterprise Linux Server release 5.7 上用源码安装MySQL-5.6.23时,遇到了" remove CMakeCache.txt and ...

  7. linux&lpar;centos&rpar;源码安装git

    最近使用一个开源库,部署的的时候需要用git克隆依赖库.刚好系统没安装git.就尝试了源码安装git. 源码下载地址:http://codemonkey.org.uk/projects/git-sna ...

  8. linux下源码安装软件

    在linux下的很多软件都是通过源码包方式发布的,这样做对于最终用户而言,虽然相对于二进制软件包,配置和编译起来繁琐点,但是它的可移植性却好得多,针对不同的体系结构,软件开发者往往仅需发布同一份源码包 ...

  9. Linux系统源码安装过程中的prefix选项

    在linux和unix环境中,源码安装是最常用的软件安装方式,一些软件除了提供源码外,也提供各种发行版的二进制安装包(如基于redhat包管理工具的rpm包),但强烈建议使用源码安装方式.原因是:(1 ...

随机推荐

  1. SQL Server 导出数据到 PostgreSQL

    乘着倒数据这会儿,把方法记录一下 需求:因为数据迁移,需要将SQL Server 2012中的数据库导入到PostgreSQL 数据库中 思路:创建一个空的数据库,便于导入数据.下载PostgreSQ ...

  2. jboss7(01)服务器开启和关闭命令

    1.简单开启服务器的命令:进入到 bin 目录下,输入 ./standalone.sh 命令. 这种开启服务器的方式有个缺点,当你的命令窗口关闭后,服务自动down了 2.让服务器开启后在后台运行:进 ...

  3. ThinkPHP 3&period;2版本 &comma; 无法读取&dollar;&lowbar;SESSION&lbrack;&&num;39&semi;verify&lowbar;code&&num;39&semi;&rsqb;

    官方网站上写的是: 生成的验证码信息会保存到session中,包含的数据有: array('verify_code'=>'当前验证码的值','verify_time'=>'验证码生成的时间 ...

  4. -&lowbar;-&num;【Angular】自定义过滤器

    AngularJS学习笔记 <!DOCTYPE html> <html ng-app="Demo"> <head> <meta chars ...

  5. 利用MiddleGen-hibernate-r5生成hbm文件及POJO文件

    1       先决条件 1.1    已安装JDK(版本1.5以上)并配置环境变量 到http://java.sun.com上下载JDK,配置环境变量(我的电脑右键->属性->高级-&g ...

  6. java环境变量设置--编写一年java&comma;竟不会配变量了

    java环境变量设置 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Ja ...

  7. C&num;语言基础——语句

    1·语句是指程序命令,都是按照顺序执行的.语句在程序中的执行顺序称为"控制流"或"执行流".根据程序对运行时所收到的输入的响应,在程序每次执行时控制流可能有所不 ...

  8. mybatis传入List实现批量更新

    如果要在一个update里面执行多条更新语句,只需要在jdbc:url后面跟上allowMultiQueries=true的参数,比如: jdbc:mysql://127.0.0.1:3306/tes ...

  9. js深复制

    一般来讲深复制主要是为了复制js对象中的引用类型,引用类型在普通的赋值操作下相当于是引用,修改复制对象也会影响原对象,简单的方法的话可以使用JSON.parse(JSON.stringify(obj) ...

  10. Mac下安装Pyqt

    1.安装sip brew install sip 2.安装pyqt brew install pyqt