仓酷云 发表于 2015-1-16 14:47:34

linux教程之VPS CentOS-6 下 LNMP HTTP web服务器的搭建步骤

功能实在太强了,在配合exec参数或者通过管道重定向到xargs命令和grep命令,可以完成非常复杂的操作,如果同样的操作用图形界面的工具来完成,恐怕要多花十几陪的时间。
笔者于今天新动手了一个VPS,来作为团体博客wid实行室(widlabs.com)开辟的实行情况。以是在这篇博文中,将先容CentOS6下LNMPHTTP情况的搭建,从利用ssh登录VPS讲起,一向到将域名剖析到服务器IP上这一完全的网站搭建流程。
新动手的VPS基础设置以下:
假造化手艺:OpenVZ操纵体系:CentOS-6x86_64BaseCPU:Intel(R)Xeon(R)CPUE3-1240V2@3.40GHz内存:2GB硬盘:50GBHDD
1、筹办事情ssh登录VPS、scp上传文件
ssh登录VPS
在Linux下,要远程办理一台服务器,长短常轻松兴奋的一件事,ssh命令用来登录远程主机,登录落后进shell命令行形式,然后就像在终端操纵本人呆板的一样来操纵远程主机就能够了,独一必要注重的就是不要把命令写错了,如rm-rf./*写成rm-rf/*。
ssh命令的一样平常用法为:
ssh用户名@主机名-p主机ssh服务端标语
ssh服务的默许端标语为22,当利用默许端口时,-p选项是可选的,第一次远程毗连某个主机时,会提醒主机实在性不克不及确认,扣问是不是持续(yes/no),输出"yes"持续便可毗连,以登录198.98.117.120为例:
carey@E530:~$sshroot@198.98.117.120-p22


scp上传文件
scp命令可完成从本机与远程主机间文件的互相复制,基于ssh服务,一样平常用法以下:
从本机复制文件到远程主机:
代码以下:

scp-Pssh服务端标语当地文件路径方针主机用户名@主机名:寄存路径


从远程主机复制文件到当地:
代码以下:

scp-Pssh服务端标语方针主机用户名@主机名:文件路径本机寄存路径


以上传本次设置LNMP情况所需的文件为例,Nginx的源码包nginx-1.6.0.tar.gz,PHP的源码包php-5.5.10.tar.gz,新起一个终端:
代码以下:

carey@E530:~/download$scp-P22nginx-1.6.0.tar.gzroot@198.98.117.120:/home/upload
carey@E530:~/download$scp-P22php-5.5.10.tar.gzroot@198.98.117.120:/home/upload




2、编译安装Nginx、PHP
起首检察下VPS的CentOS体系中预装的一些软件包:
yumlistinstalled
清算失落自带的Apache、PHP、MySQL服务(假如存在),实行命令:
yumremovehttpdmysql-servermysqlphp
反省是不是已安装GCC,实行命令gcc-v未安装则实行yum体例安装:
yuminstallgcc
安装GCC是需要的,由于上面我们将对Nginx、PHP举行编译体例安装。
安装Nginx
创立Nginx、PHP公用用户与用户组
#groupaddwww
#useradd-s/sbin/nologin-M-gwwwnginx
安装Nginx所需依附
#yuminstallpcre-devel
#yuminstallzlib-devel
举行nginx编译安装
代码以下:

#cd/home/upload#进进nginx源码包地点目次
#tartarzxvfnginx-1.6.0.tar.gz
#cdnginx-1.6.0
#./configure--prefix=/usr/local/nginx--user=nginx--group=www--with-pcre
#make
#makeinstall


安装PHP
安装PHP所需依附
代码以下:

#cd/home/upload#进进php源码包地点目次
#若wget命令可用,则实行:
#wgetftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.6.tar.gz
#注:wget不成用时,可先yuminstallwget,或到ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/下载libmcrypt-2.5.6.tar.gz源码包,再利用scp命令上传到VPS;
#tarzvxflibmcrypt-2.5.6.tar.gz
#cdlibmcrypt-2.5.6
#./configure--prefix=/usr/local/libmcrypt
#make
#makeinstall
#cd..
#yuminstalllibxml2-devel


举行PHP编译安装
代码以下:

#tarzxvfphp-5.5.10.tar.gz
#cdphp-5.5.10
#./configure--prefix=/usr/local/php--with-config-file-path=/usr/local/php--with-mysql--with-mysqli--with-pdo-mysql--enable-opcache--enable-mbstring--enable-mbregex--with-mcrypt=/usr/local/libmcrypt--with-mhash--enable-cgi--enable-fpm#可依据本身必要增添响应编译选项
#make
#makeinstall
#cpphp.ini-development/usr/local/php/php.ini
#cd/usr/local/php/etc
#cpphp-fpm.conf.defaultphp-fpm.conf


3、安装MySQL
MySQL间接经由过程yum体例安装便可:
#yuminstallmysqlmysql-servermysql-devel
4、设置Nginx、PHP
Nginx的设置
代码以下:

#cd/usr/local/nginx/conf
#cpnginx.confnginx.conf.bak
#vinginx.conf
server{
listen80;
server_namewidlabs.comwww.widlabs.com;#网站域名
#charsetkoi8-r;
#access_loglogs/host.access.logmain;
location/{
roothtml;
indexindex.htmlindex.htmindex.php;#增加index.php
}
#error_page404/404.html;
#redirectservererrorpagestothestaticpage/50x.html
#
error_page500502503504/50x.html;
location=/50x.html{
roothtml;
}
#proxythePHPscriptstoApachelisteningon127.0.0.1:80
#
#location~.php${
#proxy_passhttp://127.0.0.1;
#}
#passthePHPscriptstoFastCGIserverlisteningon127.0.0.1:9000
#往失落这几行的正文并小做修正
location~.php${
roothtml;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.php;
#fastcgi_paramSCRIPT_FILENAME/scripts$fastcgi_script_name;改成
fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;
includefastcgi_params;
}
#denyaccessto.htaccessfiles,ifApachesdocumentroot
#concurswithnginxsone
#
#location~/.ht{
#denyall;
#}
}


PHP的设置
代码以下:

#vi/usr/local/php/php.ini

;Definesthedefaulttimezoneusedbythedatefunctions
;http://php.net/date.timezone
date.timezone=PRC


5、测试设置是不是准确
代码以下:

#cd/usr/local/nginx/html      #/usr/local/nginx/html即为网站默许事情目次
#echo<&#63;phpechophpinfo();&#63;>>test.php#新建test.php作为php实行测试
#servicemysqldstart#启动MySQL服务
#/usr/local/php/sbin/php-fpm#启动PHPFastCGI办理器
#/usr/local/nginx/sbin/nginx#启动Nginx


经由过程扫瞄器会见主机IP,和test.php,判别Nginx是不是已一般事情。


6、Nginx网站服务的开机自启动
代码以下:

#vi/etc/rc.local
#!/bin/sh
#
#Thisscriptwillbeexecuted*after*alltheotherinitscripts.
#Youcanputyourowninitializationstuffinhereifyoudont
#wanttodothefullSysVstyleinitstuff.
touch/var/lock/subsys/local
#增加
/sbin/servicemysqldstart
/usr/local/php/sbin/php-fpm
/usr/local/nginx/sbin/nginx


重启VPS判别开机自启动是不是准确:
#rebootnow
7、剖析域名到服务器IP
登录域名服务商供应的办理面板,选择域名剖析,范例选择A纪录,纪录值为指向的主机IP。


到这里,全部LNMP的HTTP基本情况就算搭建完成了。



对于开发环境的选择尽量要轻量级和高度可定制,航空母舰级别的工具往往会让你迷惑不解;

海妖 发表于 2015-1-18 15:26:20

让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?

愤怒的大鸟 发表于 2015-1-24 11:30:55

另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图?片,玩游戏、上网、播放多媒体文件等。

小魔女 发表于 2015-2-1 09:59:48

对于英语不是很好的读者红旗 Linux、中标Linux这些中文版本比较适合。现在一些Linux网站有一些Linux版本的免费下载,这里要说的是并不适合Linux初学者。

再见西城 发表于 2015-2-7 03:42:09

可以说自己收获很大,基本上完成了老师布置的任务,对于拔高的题目没有去做,因为我了解我的水平,没有时间和精力去做。?

若相依 发表于 2015-2-20 13:56:27

Linux是参照Unix思想设计的,理解掌握Linux必须按照Unix思维来进行。思想性的转变比暂时性的技术提高更有用,因为他能帮助你加快学习速度。

小女巫 发表于 2015-3-6 18:05:21

在系统检测不到与Linux兼容的显卡,那么此次安装就可能不支持图形化界面安装,而只能用文本模式安装等等。

精灵巫婆 发表于 2015-3-13 06:11:31

最好先搜寻一下论坛是否有您需要的文章。这样可以获得事半功倍的效果。

只想知道 发表于 2015-3-20 15:38:40

一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢。
页: [1]
查看完整版本: linux教程之VPS CentOS-6 下 LNMP HTTP web服务器的搭建步骤