原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://linuxzkq.blog.51cto.com/9379412/1630217

实验环境及软件版本:

CentOS版本: 6.6(2.6.32.-504.el6.x86_64)

nginx版本: nginx-1.6.2

mysql版本:  Mysql-5.6.23

php版本:    php-5.6.3

一、关闭防火墙:service iptables stop

chkconfig iptables off

二、关闭selinux: sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

init 6 重启系统一定要!

三、nginx安装

1.安装准备

a.mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

b.wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

c. pcre:yum -y install pcre pcre-devel

d. openssl:yum -y install openssl openssl-devel

2.安装nginx

a.tar xf nginx-1.6.2.tar.gz

b.cd nginx-1.6.2, useradd nginx -s /sbin/nologin -M

c. ./configure --prefix=/application/nginx-1.6.2 --with-http_stub_status_module --with-http_ssl_module --user=nginx --group=nginx

d.[root@LNMP nginx-1.6.2]# echo $?

0    代表编译没有任何错误

e.make

f.make install

g.[root@LNMP nginx-1.6.2]# echo $?

0    代表编译没有任何错误

h.cd -,ln -s /application/nginx-1.6.2 /application/nginx

 i.编辑nginx.conf 

    cd /application/nginx/conf

    vi nginx.conf

    修改第2行的用户名,用户组名为:nginx nginx,保存退出.

  

3.启动nginx

[root@LNMP tools]# /application/nginx/sbin/nginx -t

nginx: the configuration file /application/nginx-1.6.2/conf/nginx.conf syntax is ok

nginx: configuration file /application/nginx-1.6.2/conf/nginx.conf test is successful

出现以上提示,代表nginx安装配置,语法等没错!

[root@LNMP tools]# /application/nginx/sbin/nginx

[root@LNMP tools]# netstat -lntup|grep nginx

tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      3685/nginx

[root@LNMP tools]# lsof -i:80

COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

nginx   3685  root    6u  IPv4  13603      0t0  TCP *:http (LISTEN)

nginx   3686 nginx    6u  IPv4  13603      0t0  TCP *:http (LISTEN)

出现以上提示,代表nginx已成功运行!

[root@LNMP tools]# curl 192.168.0.111

curl后如果有内容,就代表nginx运行正常!

 

四、源码安装Mysql-5.6.23

请移步:http://linuxzkq.blog.51cto.com/9379412/1584642,这里不在描述

五、php安装

1.安装依赖:

yum install zlib libxml libjpeg freetype libpng gd  curl libiconv  zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel -y

#确保devel安装上X software development

2.tar zxf libiconv-1.14.tar.gz

cd libiconv-1.14

./configure --prefix=/usr/local/libiconv

make

make install

3.libmcrypt

wget http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz

tar zxf libmcrypt-2.5.8.tar.gz

cd libmcrypt-2.5.8

./configure

make

make install

4. libltdl

cd libltdl/

./configure --enable-ltdl-install

make

make install

5.mhash

wget http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz

tar zxf mhash-0.9.9.9.tar.gz

cd mhash-0.9.9.9/

./configure

make

make install

rm -f /usr/lib64/libmcrypt.*

rm -f /usr/lib64/libmhash*

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

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

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

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

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

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

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

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

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

ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config

6.mcrypt

centos6.5/6.6 x86_64

wget http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz

tar zxf mcrypt-2.6.8.tar.gz

cd mcrypt-2.6.8/

./configure LD_LIBRARY_PATH=/usr/local/lib

make

make install

cd ../

7.php安装

tar xf php-5.6.3.tar.gz

cd php-5.6.3

./configure \

   --prefix=/application/php-5.6.3 \

   --with-mysql=/application/mysql \

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

   --with-freetype-dir \

   --with-jpeg-dir \

   --with-png-dir \

   --with-zlib \

   --with-libxml-dir=/usr \

   --enable-xml \

   --disable-rpath \

   --enable-safe-mode \

   --enable-bcmath \

   --enable-shmop \

   --enable-sysvsem \

   --enable-inline-optimization \

   --with-curl \

  --with-curlwrappers \

   --enable-mbregex \

   --enable-fpm \

   --enable-mbstring \

   --with-mcrypt \

   --with-gd \

   --enable-gd-native-ttf \

   --with-openssl \

   --with-mhash \

   --enable-pcntl \

   --enable-sockets \

   --with-xmlrpc \

   --enable-zip \

--enable-soap \

   --enable-short-tags \

   --enable-zend-multibyte \

   --enable-static \

   --with-xsl \

   --with-fpm-user=nginx \

   --with-fpm-group=nginx \

   --enable-ftp

出现错误:Don't know how to define struct flock on this system, set --enable-opcache=no

这是安装php 5.5时的错误,同样适用5.6.3

解决办法如下:

编辑 /etc/ld.so.conf 加入/usr/local/lib

再执行 ldconfig即可

出现错误:提示没有安装libxslt,请安装libxslt

yum -y install libxslt*

出现警告:configure: WARNING: unrecognized options: --enable-safe-mode, --with-curlwrappers, --enable-zend-multibyte

    上面的警告提示是说:上面的参数已经去除了,说明上述这些参数废弃了,php-5.6.3 已经去掉了该选项,编译时可以 #./configure --help | grep “safe-mode” 查看一下,没有信息输出,表示已经不支持!

出现错误:make: *** [sapi/cli/php] Error 1

决方法:make ZEND_EXTRA_LIBS='-liconv'

ln -s /application/mysql/lib/libmysqlclient.so.18  /usr/lib64/

make install

ln -s /application/php-5.6.3/ /application/php

cp php.ini-production /application/php/lib/php.ini

8.整合nginx和php

cd /application/php/etc/

mv php-fpm.conf.default  php-fpm.conf

   编辑php-fpm.conf 

    cd /application/php/etc

    vi php-fpm.conf

    修改里面的用户名,用户组名为:nginx nginx(user=nobody group=nobody改成user=nginx group=nginx),保存退出.

重点注意:php-fpm.conf文件里面的用户名,用户组名一定要和nginx.conf文件里面的用户名,用户组名统一,否则会出错!

/application/php/sbin/php-fpm -t

/application/php/sbin/php-fpm

[root@LNMP ~]# netstat -lntup|grep php-fpm

tcp        0      0 127.0.0.1:9000        0.0.0.0:*          LISTEN     14801/php-fpm       ==============成功标志==================

9.加入开机自启动

cat >>/etc/rc.local<<EOF

/etc/init.d/mysqld start

/application/php/sbin/php-fpm

/application/nginx/sbin/nginx

EOF

六.定义虚拟机:

1. cd  /application/nginx/conf

mkdir vhost

cd vhost

vi www.etiantian.org.conf

加入以下内容:

server {

listen 80;

server_name www.etiantian.org;

root /web/www;

index index.php index.html index.htm;

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.conf:

vi nginx.conf

在http模块里面的第一个server标签前加入include vhost/*.conf开启nginx的虚拟机功能

在根目录创建虚拟机根目录:mkdir /web/{bbs,blog,www}

给nginx授权读取执行虚拟机根目录的权限:chown -R nginx:root /web

2. 测试LNMP是否成功:

cd /web/www

vi phpinfo.php

<?php

phpinfo();

?>

保存退出,给予虚拟机读取运行phpinfo.php文件的权限

chown -R nginx:root /web

在windows客户端的hosts文件里做好IP和域名的映射,访问www.etiantian.org后,如果出现PHP紫色      的配置界面,访问正常;如不正常,现给出以下排障方法      及步骤:

192.168.170.128(linux ip) acl.bb.com

  windows浏览器访问:

     排错三步曲:

     1)ping 192.168.0.111 物理网络通不通

     2)telnet 192.168.0.111 80 浏览器到web服务通不通

     3)服务器本地curl 192.168.0.111 web服务开没开


     希望能给大家有所帮助,通过我分享的笔记,如有遗漏之处欢迎拍砖!

本文出自 “云计算与大数据” 博客,请务必保留此出处http://linuxzkq.blog.51cto.com/9379412/1630217

windows访问lnmp配置的虚拟域名的更多相关文章

  1. mac下配置Apache虚拟域名方案,以及遇到的坑(转)

      1. 配置Apache虚拟域名 1.执行    sudo vi /etc/apache2/httpd.conf 开始配置httpd.conf 的文件; //配置listen 80端口(默认配置), ...

  2. mac下配置Apache虚拟域名方案,以及遇到的坑

      1. 配置Apache虚拟域名 1.执行    sudo vi /etc/apache2/httpd.conf 开始配置httpd.conf 的文件; //配置listen 80端口(默认配置), ...

  3. Windows环境下Nginx配置本地虚拟域名

    进入conf文件夹,新建servers文件夹: 将内部的server配置段提取单独放在一个文件里,存到了conf/servers下,以方便配置多个虚拟主机. 并在nginx.conf里http配置段内 ...

  4. wamp 2.5 开放访问权限和设置虚拟域名

    开放访问权限 D:\wamp\bin\apache\apache2.4.9\conf  里的 httpd.conf 搜索www   把 Require local 改为 Require all gra ...

  5. WampServer下如何实现多域名配置(虚拟域名配置)

    之前在学习跨域的时候,我写过一篇叫做WampServer下使用多端口访问的文章,默认的 localhost 采用的是 80 端口,能使用多端口访问的核心是得新建一个端口,也就是新建一个 http 服务 ...

  6. Windows下如何配置apache虚拟主机

    其实apache配置虚拟主机说简单也简单,但是就是就有几个坑,要是稍不注意就掉坑里了. --小树前言 坑三连 没遇到这三个坑,就配置得很顺畅了 用自己指定的域名进入不了任何页面. 只能进apache的 ...

  7. 配置apache虚拟域名

    Apache配置文件的修改.   ----> Apache-----> httpd.conf,打开httpd.conf文件.   1)找到:#LoadModule rewrite_modu ...

  8. 配置apache虚拟域名(phpStudy2016)

    以前也一个个的配置过apache.php和mysql,现在嫌麻烦,就用的phpStudy. 装好之后,发现127.0.0.1可以访问,但是localhost就不可以访问.大概是因为apache没有配置 ...

  9. mac 配置nginx 虚拟域名(转载)

    我是通过homebrew 安装nginx 的,所以安装目录是默认的,之前多个server都是放在默认安装目录下的nginx.conf里的,但是这样不太好,就是会导致nginx.conf 越来越长,而且 ...

随机推荐

  1. 解决Dropbox无法连接的问题

    同步共享服务Dropbox从6月18日开始再次遭到封锁,原因是DNS污染.Dropbox上次在2010年5月曾遭到IP封锁和网址关键字过 滤,2012年5月除文件外链功能外其它功能可正常访问:2014 ...

  2. 使用Spring+Junit4.4进行测试(使用注解)

    http://nottiansyf.iteye.com/blog/345819 使用Junit4.4测试 在类上的配置Annotation @RunWith(SpringJUnit4ClassRunn ...

  3. 解决Android studio首次启动gradle无法下载jar包

    换了个电脑,原来的配置都烂了,重新使用studio,发现界面就停留在gradle下载界面不动.原因估计你会懂得.. 网上流传的配置 Gradle Vm options 或是 配置build.gradl ...

  4. Js中JSON数据交换使用总结

    Json格式简介 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是JavaScript原 ...

  5. jQuery MiniUI开发系列之:使用API文档

    jQuery MiniUI在组件设计上,是简约.独立的,没有复杂的继承体系. 比如使用DataGrid,可以在api文档的datagrid部分,查找到datagrid的所有属性.方法.事件,而无需关注 ...

  6. nginx日志分割脚本

    [root@localhost nginx]# cat logs/nginx.pid 5118[root@localhost nginx]# kill -QUIT 5118-QUIT : 关闭进程-H ...

  7. OpenGL学习笔记3——缓冲区对象

    在GL中特别提出了缓冲区对象这一概念,是针对提高绘图效率的一个手段.由于GL的架构是基于客户——服务器模型建立的,因此默认所有的绘图数据均是存储在本地客户端,通过GL内核渲染处理以后再将数据发往GPU ...

  8. C语言atan2()函数:求y/x的反正切值

    头文件:#include <math.h> atan2() 函数用于求 y / x 的反正切值.其原型为:    double atan2(double y, double x); [参数 ...

  9. 启动kafka出现找不到或无法加载主类

    首先确认下环境变量配置是否成功. 如果配置成功<javac,javah>都没有问题,那就有可能是你安装了两个版本的jdk导致的,都卸载了,然后换一个目录按照一个jdk 在配置环境变量试下!

  10. Spark Streaming资源动态申请和动态控制消费速率剖析

    本期内容 : Spark Streaming资源动态分配 Spark Streaming动态控制消费速率 为什么需要动态处理 : Spark 属于粗粒度资源分配,也就是在默认情况下是先分配好资源然后再 ...