服务器安装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. HTML引入CSS样式的四种方法

    在HTML中引入CSS的方法主要有四种,它们分别是行内式.内嵌式.链接式和导入式. 1.行内式          行内式是在标记的style属性中设定CSS样式.这种方式没有体现出CSS的优势,不推荐 ...

  2. 远程通信机制RPC与RMI的关系

     1.RPC RPC(Remote Procedure Call Protocol)远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.RPC不依赖于具体的网 ...

  3. 体验 QQ机器人C# SDK 1.X 特性总结

    主要特性 依赖注入 框架本身采用 Autofac 作为依赖注入框架.进行插件开发时,必然会使用到该框架.建议开发者阅读官方文档熟悉其用法.https://autofac.readthedocs.io/ ...

  4. Head First Python学习笔记1

    # 递归 def recursion(movies): for item in movies: # isinstance是一个判断类型的函数 if isinstance(item,list): rec ...

  5. [javaSE] 变量的传值与传址

    变量:就是将不确定的数据进行存储.也就是需要在内存中开辟一个空间 这个空间需要一个名称,这个名称就是变量名 基本数据类型:byte,short,int,long,double,float,char,b ...

  6. Android全屏的两种方法

    在开发中我们经常需要把我们的应用设置为全屏,这里我所知道的有俩中方法,一中是在代码中设置,另一种方法是在配置文件里改! 一.在代码中设置: [java] view plain copy package ...

  7. IDEA 2019注册码

    N757JE0KCT-eyJsaWNlbnNlSWQiOiJONzU3SkUwS0NUIiwibGljZW5zZWVOYW1lIjoid3UgYW5qdW4iLCJhc3NpZ25lZU5hbWUiO ...

  8. 量子猴排(Quantum Bogo sort)

    排序原理 原理很简单,如果数组不是有序的,就洗一次牌,直至数组有序为止 时间复杂度 最佳情况O(n),平均情况O(n×n!) 代码如下: import java.util.Random; public ...

  9. DW如何打开已经关闭的站点文件提示框

    DW在已经新建成功站点后,若将站点文件提示框关闭后,如何重新打开呢?即如下图所示的提示框: 点击站点下拉菜单中的‘在站点定位’即可打开关闭的提示框.

  10. js-权威指南学习笔记10

    第十章 正则表达式的模式匹配 1.正则表达式是一个描述字符模式的对象. 2.可以使用RegExp()构造函数来创建RegExp对象,不过RegExp对象更多是通过一种特殊的直接量语法来创建. 3.程序 ...