centos环境下lnmp安装配置

安装依赖库和开发环境

代码如下:

#依赖库和开发工具

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
#Nginx

yum -y install pcre-devel  zlib-devel
#Php

yum -y install gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel freetype-devel
#Mysql

yum -y install bison gcc gcc-c++ autoconf automake zlib* libxml* ncurses-devel libtool-ltdl-devel* mysql-devel
下载软件包

#创建目录

mkdir /web

cd /web
#PHP5.3.8

wget http://php.net/distributions/php-5.3.8.tar.bz2
#PHP库文件

wget http://ncu.dl.sourceforge.net/project/mcrypt/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz

wget http://ncu.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz

wget http://ncu.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz

wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
#Nginx1.5.3

wget http://www.nginx.org/download/nginx-1.5.3.tar.gz
#Nginx(pcre)

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.13.tar.gz

如果没有8.13可以这里ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ 下载最新
#Mysql5.5.17

wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.5/mysql-5.5.32.tar.gz

下载最新的:http://mysql.mirrors.pair.com/Downloads/MySQL-5.5/
#Mysql(cmake)

wget http://www.cmake.org/files/v2.8/cmake-2.8.6.tar.gz

安装mysql

代码如下:

#安装cmake

tar -zxvf cmake-2.8.6.tar.gz

cd cmake-2.8.6/

./configure

gmake && gmake install  && cd ../
#添加mysql用户

/usr/sbin/groupadd mysql

/usr/sbin/useradd -g mysql mysql

mkdir -p /data/mysql

chown -R mysql:mysql /data/mysql
#安装Mysql

tar -zxvf mysql-5.5.17.tar.gz

cd mysql-5.5.17

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc/

make && make install
#设置Mysql

#在support-files目录中有五个配置信息文件:

#my-small.cnf (内存<=64M)

#my-medium.cnf (内存 128M)

#my-large.cnf (内存 512M)

#my-huge.cnf (内存 1G-2G)

#my-innodb-heavy-4G.cnf (内存 4GB)

cd /usr/local/mysql

cp ./support-files/my-medium.cnf /etc/my.cnf

vi /etc/my.cnf

#在 [mysqld] 段增加

datadir = /data/mysql

wait-timeout = 30

max_connections = 512

default-storage-engine = MyISAM

#在 [mysqld] 段修改

max_allowed_packet = 16M
#生成授权表

cd /usr/local/mysql

./scripts/mysql_install_db --user=mysql
#更改密码

/usr/local/mysql/bin/mysqladmin -u root password 123456
#开启mysql

/usr/local/mysql/bin/mysqld_safe &
#测试连接mysql

/usr/local/mysql/bin/mysql -u root -p 123456

show databases;

exit;
#设置开机启动

vi /etc/rc.d/rc.local
#加入

/usr/local/mysql/bin/mysqld_safe &

可能出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

cd /tmp //发现没有

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

cd /var/run/

chown -R mysql mysqld

安装php

代码如下:

#1

tar -zxvf libiconv-1.14.tar.gz && cd libiconv-1.14/

./configure --prefix=/usr/local

make && make install && cd ../
#2

tar -zxvf libmcrypt-2.5.8.tar.gz && cd libmcrypt-2.5.8/

./configure &&  make && make install

/sbin/ldconfig && cd libltdl/ && ./configure --enable-ltdl-install

make && make install && cd ../
#3

tar -zxvf mhash-0.9.9.9.tar.gz && cd mhash-0.9.9.9/ && ./configure

make && make install && cd ../
#4

ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la

ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so

ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4

ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8

ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a

ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la

ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so

ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2

ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1

ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
#5
tar -zxvf mcrypt-2.6.8.tar.gz &&cd mcrypt-2.6.8/

/sbin/ldconfig

./configure

make && make install && cd ../
#6
tar -xjvf php-5.3.8.tar.bz2

cd php-5.3.8
./configure --prefix=/usr/local/php \

--with-config-file-path=/usr/local/php/etc \

--with-iconv-dir=/usr/local/ --with-freetype-dir \

--with-mysql=/usr/local/mysql \

--with-mysqli=/usr/local/mysql/bin/mysql_config \

--with-jpeg-dir --with-png-dir --with-zlib \

--with-mhash --enable-sockets --enable-ftp \

--with-libxml-dir --enable-xml --disable-rpath \

--enable-safe-mode --enable-bcmath \

--enable-shmop --enable-sysvsem \

--enable-inline-optimization --with-curl \

--with-curlwrappers \

--enable-mbregex \

--enable-mbstring --with-mcrypt --with-gd \

--enable-gd-native-ttf --with-openssl --with-mhash \

--enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl \

--enable-fpm \

--with-xmlrpc --enable-zip --enable-soap \

--without-pear \

make ZEND_EXTRA_LIBS='-liconv'

#注意这里容易出现 make: *** [ext/phar/phar.php] 错误 127

#出现mysql client解决方法

#ln -s /usr/local/mysql/lib/libmysqlclient.so /usr/lib/

#ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18

#或者chmod: 无法访问 “ext/phar/phar.phar”: 没有那个文件或目录

#make: [ext/phar/phar.phar] 错误 1 (忽略)

#解决方法在编译的时候加--without-pear参数

#如果还不行,make的时候不添加 ZEND_EXTRA_LIBS='-liconv' 参数

make install
#选择PHP.ini配置文件
cp php.ini-production /usr/local/php/etc/php.ini
更改PHP-FPM
#添加WWW用户
/usr/sbin/groupadd www && /usr/sbin/useradd -g www www

mkdir -p /var/log/nginx && chmod +w /var/log/nginx &&chown -R www:www /var/log/nginx

mkdir -p /data/www && chmod +w /data/www && chown -R www:www /data/www

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

vi /usr/local/php/etc/php-fpm.conf
#去掉/更改 配置文件中的;

pm.max_children = 64

pm.start_servers = 20

pm.min_spare_servers = 5

pm.max_spare_servers = 35

pm.max_requests = 1024

user = www
group = www
#检查语法是否正确

/usr/local/php/sbin/php-fpm -t

#出现NOTICE: configuration file /usr/local/php/etc/php-fpm.conf test is successful 测试成功

/usr/local/php/sbin/php-fpm &

#设置开机启动

vi /etc/rc.d/rc.local

#在行末加入

/usr/local/php/sbin/php-fpm &
#返回安装包目录

cd /web
安装Nginx

#安装pcre库

tar -zxvf pcre-8.13.tar.gz && cd pcre-8.13/ && ./configure

make && make install && cd ../
#安装Nginx

tar -zxvf nginx-1.0.9.tar.gz && cd nginx-1.0.9 &&

./configure --user=www --group=www \

--prefix=/usr/local/nginx \

--sbin-path=/usr/local/nginx/sbin/nginx \

--conf-path=/usr/local/nginx/conf/nginx.conf \

--with-http_stub_status_module \

--with-http_ssl_module \

--with-pcre \

--lock-path=/var/run/nginx.lock \

--pid-path=/var/run/nginx.pid

make && make install && cd ../
#更改配置
vi /usr/local/nginx/conf/nginx.conf
#修改一些参数,别直接替换文件,这只是一部分

代码如下:

user www

events {

use epoll;

worker_connections  1024;

}

location ~ \.php$ {

root           html;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

include        fastcgi_params;

}

代码如下:

#注意这里

#$document_root$fastcgi_script_name;

#检测配置文件

/usr/local/nginx/sbin/nginx -t
#提示表示成功
#nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
#nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

#开启Nginx

/usr/local/nginx/sbin/nginx &
#平滑重启Nginx

/usr/local/nginx/sbin/nginx -s reload
#添加开机启动

vi /etc/rc.d/rc.local
#最后移行加入

/usr/local/nginx/sbin/nginx
#测试

cd /usr/local/nginx/html/

touch index.php

vi /usr/local/nginx/html/index.php

代码如下:

<?php

phpinfo();

?>

phpmyadmin下载地址
http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/4.0.4.2/phpMyAdmin-4.0.4.2-all-languages.tar.gz/download

#discuz伪静态

代码如下:

rewrite ^([^\.]*)/topic-(.+)\.html$ $1/portal.php?mod=topic&topic=$2 last;

rewrite ^([^\.]*)/article-([0-9]+)-([0-9]+)\.html$ $1/portal.php?mod=view&aid=$2&page=$3 last;

rewrite ^([^\.]*)/forum-(\w+)-([0-9]+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;

rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;

rewrite ^([^\.]*)/group-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=group&fid=$2&page=$3 last;

rewrite ^([^\.]*)/space-(username|uid)-(.+)\.html$ $1/home.php?mod=space&$2=$3 last;

rewrite ^([^\.]*)/blog-([0-9]+)-([0-9]+)\.html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3 last;

rewrite ^([^\.]*)/(fid|tid)-([0-9]+)\.html$ $1/index.php?action=$2&value=$3 last;

if (!-e $request_filename) {

return 404;

}

(0)

相关推荐

  • CentOS6.5 编译安装lnmp环境

    网上搜来的教程如下 复制代码 代码如下: yum -y install gcc gcc-c++ automake autoconf libtool glibc make libmcrypt安装 mkdir /usr/local/source && cd /usr/local/source #创建并进入源文件目录 [root@localhost source ]# wget "http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5

  • CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)

    准备篇 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-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端口通过防火墙 备注:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败, 正确

  • Centos 6.8编译安装LNMP环境(Nginx+MySQL+PHP)教程

    前言 对于新手的一点建议: 最好熟悉一下linux 的基本命令,vim的常用命令 千万不要无脑复制,先看一下命令,特别是路径要注意 学会排查错误 本篇安装的软件版本为: Linux:Centos6.8 Nginx:1.10.3 MySQL:5.7.17 PHP:7.0.16 最近研究了Linux系统下的PHP环境搭建,个人感觉最好最好不要用yum默认的程序包安装,因为版本都比较低,下载最新的稳定版自行安装比较好.现在网上教程很多,之所以还记这篇,原因有一点,当你重复网上的教程自行安装时,90%还

  • centos系统下LNMP环境一键安装

    首先,咱们用SSH登陆到操作系统中- 然后下载安装包 复制代码 代码如下: wget http://catlnmp.googlecode.com/files/lnmp1.1.zip 然后我们解压 复制代码 代码如下: unzip lnmp1.1.zip 有些没有unzip的,我们这样 复制代码 代码如下: yum install unzip 然后我们跳转到该目录 复制代码 代码如下: cd lnmp 然后我们给文件添加权限: 复制代码 代码如下: chmod +x install.sh apc.

  • 使用LNMP一键安装包配置CentOS服务器环境教程

    因为不用职守,不用编译安装时输入大量的命令.作为使用linux配置生产环境的新手,无疑是最不想看到的.下面介绍如何在CentOS安装LNMP. 什么是LNMP LNMP指的是Linux系统下Nginx+MySQL+PHP这种网站服务器架构.这种网站服务器架构使用更少的资源,支持更多的并发连接,体现更高的效率.非常适合配置比较低的VPS. 安装LNMP 这里只介绍在CentOS下安装. 1.登录SSH(如何使用SSH?),键入以下命令下载LNMP一键安装包. wget -c http://soft

  • CentOS 6.6服务器编译安装lnmp(Nginx1.6.2+MySQL5.6.21+PHP5.6.3)

    准备篇: CentOS 6.6系统安装配置图解教程 http://www.jb51.net/os/239738.html 一.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables #编辑防火墙配置文件 # Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT

  • CentOS 6.4系统下编译安装LNMP和配置PHP环境具体步骤

    一.准备工作 上pkgs.org下载rmpforge.rpmforge是一个第三方yum源. 选择相应的版本下载安装. // 安装成功后,清空yum list 并 重新获取 [root@pangou Desktop]# yum clean all Loaded plugins: fastestmirror, refresh-packagekit, security Cleaning repos: base extras rpmforge updates Cleaning up Everythin

  • VPS主机CentOS系统安装LNMP环境图文教程分享

    我们国人使用VPS安装的系统环境最多的可能就是LNMP,笔者最近也在学着安装和使用VPS,也看到很多种系统环境可以选择,当然包括可以选择安装面板管理.暂时我不选择安装面板,一来使用面板没有技术含量,二来从难处学习,直接使用SSH操作VPS感觉还是非常有面子的.从多个系统中,我暂时也比较不了好坏,每一个都安装和测试一遍,并且把相关的信息都记录,一遍日后对比. 今天先来在CentOS中安装LNMP系统,最低的系统要求为128M内存,我相信大家的VPS最低也应该有256M内存,我测试的机器为512M内

  • CentOS7编译安装新版LNMP环境

    由于公司要求需要最新版的ZABBIX2.4.4需要最新版的系统CENTOS7和新版的LNMP环境,所以本人摸索着使用新版的环境搭建了LNMP系统,环境版本如下: 系统:CentOS 7 x86_64 NGINX:nginx-1.7.12 数据库:mariadb-10.0.13 PHP:php-5.5.23 首先做一些准备工作,先把centos7的防火墙更换成iptables,可以参见如下链接 centos7防火墙设置iptables 修改成iptables之后就可以清空iptables里面的过滤

  • CentOS 7.0编译安装lnmp教程(Nginx1.6.0+MySQL5.6.19+PHP5.5.14)

    准备篇: CentOS 7.0系统安装配置图解教程 http://www.jb51.net/os/188487.html 一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动 2.安装iptab

随机推荐