服务器安装LNMP(centos6.6+nginx1.7.12+mysql5.6.24+php5.6.7)

本次安装  centos6.6+nginx1.7.12+mysql5.6.24+php5.6.31(虚拟机方式安装,跳过第一步)
libmcrypt https://nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
pcre https://nchc.dl.sourceforge.net/project/pcre/pcre/8.36/pcre-8.36.tar.gz
mysql  http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.24.tar.gz
php  http://hk2.php.net/distributions/php-5.6.31.tar.gz
下载文件命令 wget url
 

准备工具:2个U盘、以下几个文件

ULtraISO-9.6.2.3059.exe                            (光盘映像文件制作/编辑/转换工具)

centos-6.6-x86-64-minimail.iso          (centos6.6的最小化安装ISO)

libmcrypt-2.5.8.tar.gz                         (加密函数源码包)

pcre-8.36.tar.gz                                  (pcre语言正则表达式源码包)

mysql-5.6.24.tar.gz                             (mysql源码包)

php-5.6.7.tar.gz                                   (php源码包)

nginx-1.7.12.tar.gz                              (nginx源码包)

备注:nginx1.7.12、php5.6.7、mysql5.6.24、libmcrypt2.5.8、pcre8.36为固定版本,其他的编译工具等网络下载安装

1、centos-6.6-x86-64-minimail.iso的内容刻录到第1个U盘

客户端插入第1个空U盘,打开UltraISO软件,打开centos-6.6-x86-64-minimail.iso文件,点击”启动”菜单-“写入硬盘映像…”,硬盘驱动器选择U盘,点击” 写入”,完成后拔出

2、源码安装包放入到第2个U盘

客户端插入第2个空U盘,拷贝libmcrypt-2.5.8.tar.gz、pcre-8.36.tar.gz、mysql-5.6.24.tar.gz、php-5.6.7.tar.gz、nginx-1.7.12.tar.gz,完成后拔出

一、centos6.6安装和配置

1、centos6.6安装

服务器插入第一个U

进入BIOS(按F9),设置USB启动为首选,按F10退出

按F1继续进入安装界面,选择”install or upgrade an existing system”,回车

选择”english”语言(避免命令行下面的乱码问题),点OK

选择”us”键盘类型,点OK

选择安装媒体”Hard drive”,点OK

选择安装来源”/dev/sda4”,点OK

点next,安装到哪个设备,选择Basic Storage Devices

点next,安装方式为全新、升级,选择全新”Fresh instalation”

点next,输入网络标识名称”test”,设置网络”configure network”

选择”system eth0”网卡,点edit,勾选”connect automatically”

点”IPv4 settings”,从method中选择manual,

点add设置IP、子网掩码、网关、DNS,点apply,点close

点next,选择时区”上海”,设置密码

点next,如何分区,选择”create custom layout”

点create,点create,进入”add  partition”对话框页面(以2块硬盘为例子):

Mount point:选择/,ext4分区类型,输入size,点OK

Mount point:选择/tmp,ext4分区类型,输入size,点OK

File systemtype:选择SWAP,输入size,点OK

Mount point:选择/var,ext4分区类型,输入size,点OK

Mount point:选择/home,ext4分区类型,输入size,点OK

Mount point:选择/data,ext4分区类型,size选择”fill to maximum allowable” ,点OK

最终形成的分区如下表:

第一块硬盘:

第二块硬盘:

/系统10G

/var日志32G

/usr系统软件

/home用户目录8G

/usr/local第三方软件

/data数据文件*G(剩余全部分配)

/usr/local/src源代码

/data/mysql数据库文件

/tmp临时文件8G

/data/website网页文件

swap交换分区8G

 

点next,选择”write changes to disk”,写入磁盘

点”change device”(修改MBR引导),”BIOS drive order”下拉选择第一个硬盘,点OK

点next,等待安装完成

点reboot并且拔出U盘,完成安装

2、centos6.6配置

服务器插入第2个U

#modprobe  usb-storage                        (如果需要的话)加载usb模块

#fdisk  -l                                                 查看磁盘,usb模块是否加载成功

#mkdir  /mnt/usb                                创建usb目录

#mount  /dev/sda4  /mnt/usb            载入U盘(假如U盘是sda4)

#cd  /mnt/usb                                      进入/mnt/usb目录

#cp  *  /usr/local/src                           拷贝/mnt/usb目录下所有文件到src目录

#umount  /mnt/usb                                (如果需要的话)卸载U盘

        

#vi  /etc/sysconfig/iptables                 进入防火墙设置,打开3306、80端口

注意:vi里面有多余空格会报错

对应行下面增加:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

一般修改远程登录端口22(安全)修改/etc/ssh/sshd_config中Port 22并且重启/etc/init.d/sshd:

#service  iptables  restart                         重启防火墙使设置生效

#yum  -y  install  wget  gcc-c++  ncurses-devel  cmake  make  perl  libjpeg-devel  libpng-devel  openssl-devel  libxml2-devel  gd-devel  libcurl-devel sysstat                         安装编译工具

#cd  /usr/local/src                                  进入/usr/local/src目录

#tar  zxvf  libmcrypt-2.5.8.tar.gz              解压libmcrypt-2.5.8.tar.gz

#tar  zxvf  pcre-8.36.tar.gz                       解压pcre-8.36.tar.gz

#tar  zxvf  mysql-5.6.24.tar.gz                 解压mysql-5.6.24.tar.gz

#tar  zxvf  php-5.6.7.tar.gz                       解压php-5.6.7.tar.gz

#tar  zxvf  nginx-1.7.12.tar.gz                  解压nginx-1.7.12.tar.gz

#cd  /usr/local/src/pcre-8.36                 进入pcre-8.36目录

#./configure                                             配置软件包

#make                                                      编译软件包

#make  install                                           安装软件包

#cd  /usr/local/src/libmcrypt-2.5.8        进入libmcrypt-2.5.8目录

#./configure                                             配置软件包

#make                                                      编译软件包

#make  install                                           安装软件包

二、mysqlnginxphp安装和配置

1、mysql、nginx、php安装

#groupadd  mysql                                      创建用户组mysql

#useradd  mysql  -g  mysql                        创建用户mysql,并加入到mysql组

#mkdir  /usr/local/mysql                          创建/usr/local/mysql目录

#mkdir  /data/mysql                                  创建/data/mysql目录

#mkdir  /data/mysql/data                         创建/data/mysql/data目录

#vi  /etc/profile                                         编辑profile ,加入PATH搜索路径

文件最后加入如下2行

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

export PATH

#source  /etc/profile                                 使配置生效

#cd  /usr/local/src/mysql-5.6.24             进入mysql-5.6.24目录

#cmake  \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql  \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock  \

-DDEFAULT_CHARSET=utf8  \

-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk  \

-DDEFAULT_COLLATION=utf8_general_ci  \

-DWITH_MYISAM_STORAGE_ENGINE=1  \

-DWITH_INNOBASE_STORAGE_ENGINE=1  \

-DWITH_ARCHIVE_STORAGE_ENGINE=1  \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1  \

-DWITH_MEMORY_STORAGE_ENGINE=1  \

-DWITH_READLINE=1  \

-DENABLED_LOCAL_INFILE=1  \

-DMYSQL_DATADIR=/data/mysql/data  \

-DMYSQL_USER=mysql  \

-DMYSQL_TCP_PORT=3306

#make                                                           编译mysql

#make  install                                               安装mysql

#cd  /usr/local/src/nginx-1.7.12                                                  进入nginx1.7.12目录

#./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module

#make                                                          编译nginx

#make  install                                              安装nginx

#cd  /usr/local/src/php-5.6.7                                                        进入php5.6.7目录

#./configure  \

--with-iconv  \

--with-zlib  \

--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-xmlrpc  \

--enable-soap  \

--without-pear  \

--enable-sqlite-utf8  \

--enable-ftp  \

--with-jpeg-dir  \

--with-freetype-dir  \

--with-png-dir  \

--enable-fpm  \

--with-fpm-user=httpd  \

--with-fpm-group=httpd  \

--with-pdo-mysql  \

--with-mysqli  \

--with-mcrypt=/usr/local/  \

--enable-opcache=no  \

#make                                                             编译php

#make  install                                                  安装php

2、mysql配置

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

拷贝my-default.cnf到/etc下名为my.cnf

#cd  /usr/local/mysql                                     返回上级目录/usr/local/mysql

#scripts/mysql_install_db  --user=mysql  --datadir=/data/mysql/data      初始化数据库

#chown  -R  mysql:mysql  /usr/local/mysql       修改/usr/local/mysql目录权限

#chown  -R  mysql:mysql  /data/mysql/data      修改/data/mysql/data目录权限

#cd  /usr/local/mysql/support-files            进入/usr/local/mysql/support-files目录

#./mysql.server  start                                   启动mysql服务

#mysql                                                          进入mysql

以下设置mysql远程连接配置

mysql>GRANT  ALL  PRIVILEGES  ON  *.*  TO  root@"%"  IDENTIFIED  BY  "123456";                             root是用户名,%代表任意主机,'123456'指定的登录密码

mysql>flush  privileges;                                重载系统权限

mysql>quit                                                   退出

3、php配置

#cp  /usr/local/src/php-5.6.7/php.ini-production  /usr/local/lib/php.ini

拷贝php.ini-production到/usr/local/lib目录下名为php.ini

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

拷贝/usr/local/etc/php-fpm.conf.default到/usr/local/etc/目录下名为php-fpm.conf

#groupadd  nginx                                       创建用户组nginx

#useradd  nginx  -g  nginx                         创建用户nginx,并加入到nginx组

#mkdir  /var/log/php                                创建/var/log/php目录

#chmod  666  /var/log/php                      设置/var/log/php目录权限

#vi  /usr/local/lib/php.ini                             编辑php.ini,修改时区

时区改为date.timezone="Asia/Shanghai"

#vi  /usr/local/etc/php-fpm.conf                  编辑php-fpm.conf

修改红色部分

error_log=/var/log/php/php-fpm.log

.

.

.

user=nginx

group=nginx

#/usr/local/sbin/php-fpm                             开启php服务

4、nginx配置

#vi  /usr/local/nginx/conf/nginx.conf          编辑nginx.conf

修改80端口为其他

最后 } 上面加入include vhost/*.conf;

#mkdir  /usr/local/nginx/conf/vhost

#ln  -s  /usr/local/lib/libpcre.so.1  /lib64     添加libpcre.so.1这个模块

#/usr/local/nginx/sbin/nginx                        开启nginx服务

#yum  -y  update                                                       安装系统补丁

三、站点测试

测试前先建立站点路径配置文件

php测试页代码:

<?php phpinfo(); ?>

php/nginx/mysql启动命令:

/usr/local/sbin/php-fpm

/usr/local/nginx/sbin/nginx

/usr/local/mysql/support-files/mysql.server  start

nginx -s reload  :修改配置后重新加载生效
nginx -s reopen  :重新打开日志文件
nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确
nginx -s stop  :快速停止nginx
              quit  :完整有序的停止nginx

我是用虚拟机搭的环境,做了些其他的操作,仅供参考:

1. 启用共享文件夹(使宿主机、客户机都可以相互使用同一工作空间)
    i. 启用VMware Tools,不同系统的装法有点不一样,请自行百度。
    ii.虚拟机->设置->选项->共享文件夹,点击启用,添加,按步骤来就行了
 

2. 配置nginx 配置,站点路径指向共享文件夹中的某一项目路径

    server {
        listen       8088;
        server_name  localhost;
        #root         html;
        root         /mnt/hgfs/website/basic/web;   #所指向共享文件夹路径
        index         index.html index.php;
     
        #php解析
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;                
            fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$document_root$fastcgi_script_name;
        #    include        fastcgi_params;
            include        fastcgi.conf;
        }
 
      

3.实现内网转发,外网可以直接访问站点(使用反向代理服务器,网上找到个第三方的,也可以自己搭个代理服务器,这里使用免费的,魔法隧道,配置比较简单)

 魔法隧道地址: http://www.mofasuidao.cn/

4.本地搭建ftp服务,使用魔法隧道对ftp 21端口进行转发(考虑个人电脑安全性暂未实现,即使要实现也必须增加安全性措施,sftp或许更适用)

 

通过这些就可以实现一个供演示玩耍的站点了,不过在操作权限上面做好防范,毕竟是个人电脑。
 

服务器安装LNMP及构建个人站点的更多相关文章

  1. 55个高质量的Magento主题,助你构建电子商务站点

    Magento是一个功能丰富的开源电子商务平台(译者注:基于PHP的Zend Framework开发),在网店的外观.商品管理以及其它功能上,它给商家提供了前所未有的灵活和易用性.通过挑选一个合适的M ...

  2. 以CentOS为操作系统的vps或服务器安装lnmp运行环境的方法

    安装步骤: 1.使用putty或类似的SSH工具登陆VPS或服务器: 登陆后运行:screen -S lnmp 如果提示screen: command not found 命令不存在可以执行:yum ...

  3. 阿里云Linux CentOS8.1 64位服务器安装LNMP(Linux+Nginx+MySQL+PHP) 并发调试之Nginx配置

    搭建好LNMP环境之后,接着要考虑的就是整个系统的并发能力了. 一.Nginx的配置 Nginx有很好的并发能力.但是要想使它的并发能力能够施展出来,需要在初步安装好的Nginx上做一些配置.主要需要 ...

  4. 阿里云Linux CentOS8.1 64位服务器安装LNMP(Linux+Nginx+MySQL+PHP)

    LNMP环境和软件版本: 名称 版本号 查询命令 Linux系统 CentOS Linux release 8.1.1911 (Core) cat /etc/redhat-release Nginx ...

  5. 利用 Heritrix 构建特定站点爬虫

    http://www.ibm.com/developerworks/cn/opensource/os-cn-heritrix/

  6. Ubuntu新服务器安装lnmp

    版本: nginx(无要求,最新) mysql(5.6.xx) php(5.6.xx) ubuntu(16.04,其他版本也并无过多差异) 准备: #apt-get update #apt-get i ...

  7. 腾讯云linux服务器安装lnmp一键包

    这边域名已经实名了. 然后修改DNS服务器 然后备案吧 还是先不备案,直接云解析DNS 哦,想起来了,阿里云自己都可以生成SSL证书.重新弄一次吧,其实腾讯云也可以申请域名型免费版DV

  8. 阿里云Linux CentOS8.1 64位服务器安装LNMP(Linux+Nginx+MySQL+PHP) 并发调试之调试工具ab(apache bench)

    ab 测试工具,全称是 apache bench ,是 Apache 提供的一款测试工具,具有简单易上手的特点,在测试 Web 服务时非常实用. ab 可以在 Windows 系统中使用,也可以在 L ...

  9. 阿里云Linux CentOS8.1 64位服务器安装LNMP(Linux+Nginx+MySQL+PHP) 并发调试之MySQL配置

    mysql高并发配置 要在mysqld下设置 1. 修改back_log参数值:由默认的50修改为500.(每个连接256kb,占用:125M) back_log=500 back_log值指出MyS ...

随机推荐

  1. grafana安装

    1 wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.2.4-1.x86_64.rpm2 sudo ...

  2. Socket编程 - API

    基础知识部分:http://www.cnblogs.com/Jimmy1988/p/7839940.html 1. 基本流程 Process Client Server Comment socket( ...

  3. EF的小知识

    关于EF多表提交保存的问题,同理,修改也适用,用EF不久,总是每张表提交都SaveChanges()一下,后面查看了点资料,其实直接可以add到每张表,直接最后提交就行了,这样操作起来和性能上都要好很 ...

  4. CentOS7下SVN server的安装与配置

    CentOS7通过yum install命令进行安装SVN(参考:http://subversion.apache.org/packages.html#centos) $ yum install su ...

  5. 数组的strong copy理解

      一.数组的不同情况下的copy,mutablecopy分析 1.不可变数组的copy(没有创建新对象,复制的只是指针)       2.不可变数组的mutable copy(创建新对象)     ...

  6. Linux下socket通信和epoll

    上一篇博客用多线程实现服务端和多个客户端的通信,但是在实际应用中如果服务端有高并发的需求,多线程并不是一个好选择. 实现高并发的一种方法是IO多路复用,也就是select,poll,epoll等等. ...

  7. WCF之maxConnections

    <bindings> <netTcpBinding> <binding name="TcpBinding" closeTimeout="00 ...

  8. C#简单工厂模式(学习Learning hard讲解笔记)

    原味地址http://www.cnblogs.com/zhili/p/SimpleFactory.html 简单工厂模式通俗的理解就是用户与工厂的关系,用户用的东西,工厂来生成,责任明确. 就像大神展 ...

  9. html5中高德、腾讯、百度 地图api调起手机app

    html 部分 <div id="mapBg"> <div class="mapTab"> <a href="" ...

  10. Ubuntu搜索不到WiFi的解决办法

    时间:2018年1月25日 废话连篇:杭州下了第一场雪,冒险严寒来到实验室,打开电脑,纳尼连不上wifi了,好吧!不要被这件小事影响心情,开始修复了,经过一顿搜索,可能是因为驱动的问题,终端输入以下两 ...