LNMP服务器环境配置详解(linux+nginx+mysql+php)

服务器配置

1.购买好vps后登录服务器首先修改密码passwd root
2.修改ssh的超时时间

 代码如下 复制代码
vi /etc/ssh/sshd_config
ClientAliveInterval 60
ClientAliveCountMax 30

3.安装setup

 代码如下 复制代码

#安装setuptool
yum install setuptool
#可以发现执行setup后不全,再安装一个用于系统服务管理
yum install ntsysv
#再安装个防火墙,以及setup中配套的防火墙设置、网络设置
yum install iptables
#安装setup中配套的防火墙设置
yum install system-config-securitylevel-tui
#安装setup中配套的网络设置
yum install system-config-network-tui

4.格式化磁盘,挂载磁盘

客户端环境:Mac OSX
远程连接方式:运行 Terminal,输入命令 ssh username@ip
硬盘分区及挂载操作步骤:
1. 查看未挂载的硬盘(名称为/dev/xvdb)

 代码如下 复制代码
# fdisk -l
Disk /dev/xvdb doesn't contain a valid partition table
2. 创建分区
# fdisk /dev/xvdb
...
输入n
Command (m for help):n
输入p
Command action
e extended
p primary partition (1-4)
p
输入1
Partition number (1-4): 1
回车
First cylinder (1-2610, default 1):
Using default value 1
回车
Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610):
Using default value 2610
输入w
Command (m for help): w
The partition table has been altered!
3. 格式化分区
# mkfs.ext3 /dev/xvdb1
4. 建立挂载目录
# mkdir /data
5. 挂载分区
# mount /dev/xvdb1 /data
6. 设置开机自动挂载
vi /etc/fstab
在vi中输入i进入INERT模式,将光标移至文件结尾处并回车,将下面的内容复制/粘贴,然后按Esc键,输入:x保存并退出 www.111cn.net
/dev/xvdb1 /data ext3 defaults 0 0
7. 确认是否挂载成功
重启服务器
# reboot
查看硬盘分区
# df
/dev/xvdb1 20635700 176196 19411268 1% /data

5.首先安装gcc
6.安装nginx

 代码如下 复制代码
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.31.tar.gz
tar zxvf pcre-8.31.tar.gz
cd pcre-8.31/
./configure
make && make install
cd ../
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/web/soft/pcre-8.31':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
如果出现这样的错误,则表示系统没有编译gcc
yum install gcc即可解决此问题
libtool: compile: unrecognized option `-DHAVE_CONFIG_H'
libtool: compile: Try `libtool --help' for more information.
make[1]: *** [pcrecpp.lo] 错误 1
make[1]: Leaving directory `/web/soft/pcre-8.31'
make: *** [all] 错误 2
缺少gcc-c++
yum install gcc-c++
可编译通过

二.安装nginx

 代码如下 复制代码

官方网址:http://www.nginx.org/
wget http://www.nginx.org/download/nginx-1.2.5.tar.gz
tar zxvf nginx-1.2.5.tar.gz
cd nginx-1.2.5/
./configure --user=www --group=www --prefix=/web/server/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
cd ../
错误提示总结:
安装提示错误libpcre.so.1,则需要执行命令ln -s /usr/local/lib/libpcre.so.1 /lib64
如果没有安装pcre库,则在编译安装nginx的时候会提示./configure: error: the HTTP rewrite module requires the PCRE library.
如果提示错误nginx: [emerg] getpwnam("www") failed 则表示系统中没有www用户 用groupadd -f www useradd -g www www
如果提示错误./configure: error: SSL modules require the OpenSSL library. 则需要安装openssl
ssl官网地址:http://www.openssl.org/source/
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
编译安装ssl后重新安装nginx
./configure --user=www --group=www --prefix=/web/server/nginx --with-http_stub_status_module --with-openssl=/usr/local/ssl
如果系统没有安装gcc,则需要先安装gcc. 命令yum install gcc*
其他错误:
编译Nginx提示gzip module requires the zlib library
新手在尝试安装nginx时,常常会因为缺少依赖组件,导致nginx相应模块无法安装,在执行“./configure”时常出现错误。
若在“./configure”后方加入了“--with-http_gzip_static_module”(添加gzip压缩模块)提示以下错误:
./configure: error: the HTTP gzip module requires the zlib library.
You can either disable the module by using –without-http_gzip_module
option, or install the zlib library into the system, or build the zlib library
statically from the source with nginx by using –with-zlib= option.
则需要安装“zlib-devel”即可。SSH执行以下命令:
yum install -y zlib-devel或者去官方网站下载zlib安装wget http://zlib.net/zlib-1.2.7.tar.gz

 

7.安装mysql

 代码如下
复制代码
 rpm -ivh mysql.rpm


8.安装php参见




 

安装php5.4.0,编译安装php-5.4.0 ,php5.4.0 Zend Guard Loader暂时不支持,等待zend官方更新。

 代码如下 复制代码
1.下载
wget wget http://cn.php.net/distributions/php-5.4.0.tar.gz
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
wget "http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?modtime=1171868460&big_mirror=0"
wget "http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz?modtime=1194463373&big_mirror=0"
wget "http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz?modtime=1175740843&big_mirror=0"
wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-6.7.5-9.tar.gz
wget http://pecl.php.net/get/imagick-3.0.1.tgz2.编译安装PHP 5.4.0所需的支持库
wget http://pecl.php.net/get/memcache-3.0.7.tgz
tar zxvf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local
make
make install
cd ../
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 ../../
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make
make install
cd ../
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
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
/sbin/ldconfig
./configure
make
make install
cd ../
3.编译mysql5.5.21
wget http://mysql.stu.edu.tw/Downloads/MySQL-5.5/mysql-5.5.21.tar.gz
wget http://www.cmake.org/files/v2.8/cmake-2.8.7.tar.gz
tar xvzf cmake-2.8.7.tar.gz
./configure
make
make install
编译安装mysql
tar xvzf mysql-5.5.21.tar.gz
cd mysql5.5.21
rm CMakeCache.txt
cmake .
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.5.21/
-DMYSQL_DATADIR=/usr/local/mysql5.5.21/data
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DMYSQL_TCP_PORT=3306
-DMYSQL_UNIX_ADDR=/usr/local/mysql5.5.21/data/mysql.sock
-DMYSQL_USER=mysql
-DWITH_DEBUG=0
make && make install 4.编译php
安装依赖包
yum install ncurses-devel libxml2-devel bzip2-devel libcurl-devel curl-devel libjpeg-devel libpng-devel freetype-devel net-snmp-devel
tar xvzf php-5.4.0.tar.gz
cd php-5.4.0
./configure --prefix=/web/server/php --with-config-file-path=/web/server/php/etc --with-mysql --with-mysqli --with-pdo-mysql --with-iconv-dir=/usr/local --enable-fpm --disable-phar --with-fpm-user=www-data --with-fpm-group=www-data --with-pcre-regex --with-zlib --with-bz2 --enable-calendar --with-curl --enable-dba --with-libxml-dir --enable-ftp --with-gd --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-native-ttf --enable-gd-jis-conv --with-mhash --enable-mbstring --with-mcrypt --enable-pcntl --enable-xml --disable-rpath --enable-shmop --enable-sockets --enable-zip --enable-bcmath --with-snmp --disable-ipv6
make ZEND_EXTRA_LIBS='-liconv'
make test
make install
cp php.ini-production /usr/local/php5.4.0/etc/php.ini5.编译安装PHP5扩展模块
如果运行/web/server/php/bin/phpize,出现如下提示,则要安装m4 autoconf
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
yum install autoconf
yum install m4
tar zxvf memcache-3.0.7.tgz
cd memcache-3.0.7/
/web/server/php/bin/phpize
./configure --with-php-config=/web/server/php/bin/php-config
make
make install
cd ../
/*暂时没有编译成功*/
tar xvzf memcached-1.0.2.tgz
cd memcached-1.0.2
/web/server/php/bin/phpize
./configure --with-php-config=/web/server/php/bin/php-config
make
make install
cd ../
/*没有编译*/
tar zxvf ImageMagick.tar.gz
cd ImageMagick-6.5.1-2/
./configure
make
make install
cd ../
/*没有编译*/
tar zxvf imagick-2.3.0.tgz
cd imagick-2.3.0/
/usr/local/php5.4.0/bin/phpize
./configure --with-php-config=/usr/local/php5.4.0/bin/php-config
make
make install
cd ../6.修改配置
vi /web/server/php/etc/php.ini
最后增加:
;change for hugwww
extension_dir = /usr/local/php5.4.0/lib/php/extensions/no-debug-non-zts-20090626/
extension = "memcache.so"
extension = "memcached.so"
extension = "imagick.so"
修改为:
cgi.fix_pathinfo=0
open_basedir = /tmp:/www/web
expose_php = Off
allow_url_fopen = Off
disable_functions =phpinfo,passthru,ini_restore,eval完成!

.开机启动参见

编辑/etc/rc.d/rc.local文件,加入要启动的文件即可

 代码如下 复制代码
/web/server/nginx/sbin/nginx
/web/server/php/sbin/php-fpm
/web/server/subversion/bin/svnserve -d -r /web/svn/repos
/web/server/memcached/bin/memcached -d -m 100 -u www -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached.pid
/web/server/apache/bin/apachectl

以上是启动nginx服务
启动php服务
启动svn服务
启动memcached服务

时间: 2024-11-03 21:21:55

LNMP服务器环境配置详解(linux+nginx+mysql+php)的相关文章

LNMP服务器环境配置详解

  服务器配置 1.购买好vps后登录服务器首先修改密码passwd root 2.修改ssh的超时时间  代码如下   vi /etc/ssh/sshd_config ClientAliveInterval 60 ClientAliveCountMax 30 3.安装setup  代码如下   #安装setuptool yum install setuptool #可以发现执行setup后不全,再安装一个用于系统服务管理 yum install ntsysv #再安装个防火墙,以及setup中

Centos6.5搭建java开发环境配置详解_Linux

一.安装jdk 1.查看Linux自带的JDK是否已安装 java –version 如果出现openjdk,最好还是先卸载掉openjdk,在安装sun公司的jdk. 2.查看jdk信息 rpm -qa|grep java 3.卸载OpenJDK,执行以下操作: rpm -e --nodeps tzdata-java-2012c-1.el6.noarch rpm -e --nodeps java-1.7.0-openjdk-1.7.0.45-1.45.1.11.1.el6.x86_64 4.新

LNMP服务器环境配置 (linux+nginx+mysql+php)_Linux

一.简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为"engine X", 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发的,它已经在该站点运行超过三年了.Igor Sysoev在建立的项目时,使用基于BSD许可. 在高并发连接的情况下,Nginx是Apache服务器不错的替代品.Nginx同时也可以作为7层负

Docker快速入门以及环境配置详解_docker

前言 数据科学开发环境配置起来让人头疼,会碰到包版本不一致.错误信息不熟悉和编译时间漫长等问题.这很容易让人垂头丧气,也使得迈入数据科学的这第一步十分艰难.而且这也是一个完全不常见的准入门槛. 还好,过去几年中出现了能够通过搭建孤立的环境来解决这个问题的技术.本文中我们就要介绍的这种技术名叫Docker.Docker能让开发者简单.快速地搭建数据科学开发环境,并支持使用例如Jupyter notebooks等工具进行数据探索. 简介 Docker 最初 dotCloud 公司内部的一个业余项目

apache服务器全局配置详解(全)_Linux

Apache服务器全局配置之服务器标识配置篇 服务器标识相关指令:ServerNameServerAdminServerSignatureServerTokensUseCanonicalNameUseCanonicalPhysicalPort ServerAdmin和ServerTokens指令控制有关服务器的哪些信息将出现在服务器生成的文档中(如错误消息).ServerTokens指令设置服务器HTTP响应头字段的值.ServerName.UseCanonicalName. UseCanoni

CentOS安装OpenLiteSpeed服务器环境步骤详解

第一.部署OpenLiteSpeed服务器准备工作   根据官方的说法,我们可以在CentOS 5,6,7版本中是官方认可可运行的,也有用户在Debian Wheezy版本中测试通过,这里我们还是先根据官方的指导在CentOS环境中部署,后期老蒋在单独在我比较喜欢的占用资源较小灵活的Debian环境,好歹我们先看看是否可以成功,体验性能如何再深入挖掘.   第二.更新系统环境及系统源    代码如下 复制代码 yum update   这里我们为了确保系统获取的最新源版本,所以我们需要更新Cen

图文详解linux/windows mysql忘记root密码解决方案

经常有用户过来咨询说自己的mysql服务器忘记密码了怎么办,为了更好的解决大家的困扰,本文特归档整理了windows和linux系统下,mysql忘记密码的解决方案.本文内容是我亲测实用,当然过程中踩过的坑我也会在本文中一并分享交流.废话不多说,上菜- Windows篇 演示环境: 服务器:windows2003 64位企业版 mysql版本:5.6.17 操作步骤: 1. 关闭mysql服务. 以管理员身份登录到您的服务器系统,如果服务器上的Mysql正在运行,则先停止MySQL服务.对于Wi

Nginx+Tomcat的服务器端环境配置详解_nginx

Nginx+tomcat是目前主流的java web架构,如何让nginx+tomcat同时工作呢,也可以说如何使用nginx来反向代理tomcat后端均衡呢?直接安装配置如下: 1.JAVA JDK安装: #下载相应的jdk软件包,然后解压安装,我这里包名称为:jdk-7u25-linux-x64.tar.gz         tar -xzf jdk-7u25-linux-x64.tar.gz ;mkdir -p /usr/java/ ;mv jdk1.7.0_25/ /usr/java/

Java Web开发环境配置详解_java

这是进行Java Web开发必备的一个过程,仅供新手参考,高手可以忽略! 先看看要安装的东西: jdk下载地址:http://www.jb51.net/softs/214120.html eclipse下载:http://www.jb51.net/softs/143046.html MySQL下载:http://www.jb51.net/softs/40589.html tomcat下载:http://www.jb51.net/softs/417569.html 各位也可以去官网上下载,版本不一