设为首页 收藏本站
查看: 4151|回复: 0

快速搭建LNMP+FTP网站

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-6-2 09:10:05 | 显示全部楼层 |阅读模式
LNMP(Linux-Nginx-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包括:Linux操作系统,Nginx网络服务器,MySQL数据库,PHP编程语言,所有组成产品均是免费开源软件,这四种软件组合到一起,成为一个免费、高效的网站服务系统。

登录到服务器

1. 完成客户端配置后,按菜单“文件”->“连接”,打开“连接”对话框,点击对话框上的“新建会话”按钮,打开新建会话向导,协议选择“SSH2”,如下图所示:
wKioL1VsCjrT8j81AAMISIm-Aqw205.jpg
2. 点击“下一步”,在会话向导中进行如下配置:
(1)主机名:输入服务器的公网IP(在服务器“管理视图”页面可查看服务器的公网IP)。
(2)端口:输入服务器的端口,必须填22。
(3)用户名:输入管理员账号。
如下图所示:
wKioL1VsCkbBeeE4AAFuJrrh7w8398.jpg
3. 点击“下一步”,确定该会话的名字(默认为之前输入的服务器公网IP),点击“完成”,即创建了1个会话。

4. 在“连接”窗口,右键点击新建的会话,选择“属性”后,在弹出的“会话选项”中,取消勾选“公钥”,如下图所示:
这里不对公钥进行鉴权,因此需要取消勾选“公钥”。
wKiom1VsCLrSxc9VAAIwp_5VSXA427.jpg

5. 在“连接”窗口的会话列表中,可以看到之前创建的会话,选中后,点击“连接”按钮,即开始连接CentOS云服务器,如下图所示:
wKioL1VsCm_Cmg2eAADnZ7Mdae4656.jpg
6. 在弹出的“PAM authentication Authentication”对话框中,输入密码,密码为管理员账号的密码。点击“确定”,即完成登录。
如下图所示:

wKiom1VsCOjB515tAADSdwMQGOo812.jpg
注:
管理员账号的初始密码由系统分配,用户可以重置密码,详见管理员账号密码重置。

7. 按菜单“选项”->“会话选项”->“终端”,打开终端设置对话框,设置发送协议,如下图所示:
在网络环境正常的情况下,配置“反空闲”中的“发送协议”,能保持终端连接至跳板机或服务器,在无操作空闲时保持会话不断开。

wKioL1VsC1mi9zR7AAJ36p4SpW4939.jpg

服务器添加虚拟盘分区和格式化

  1. 查看数据盘信息

登录服务器后,可以使用“fdisk -l”命令查看数据盘相关信息。
使用“df –h”命令,无法看到未分区和格式化的数据盘。  

wKioL1VsC2vwi7BKAALMZgZItcY515.jpg

2.数据盘分区

执行以下命令,对数据盘进行分区。

fdisk /dev/xvdb

按照界面的提示,依次输入“n”(新建分区)、“p”(新建扩展分区)、“1”(使用第1个主分区),两次回车(使用默认配置),输入“wq”(保存分区表),开始分区。
这里是以创建1个分区为例,用户也可以根据自己的需求创建多个分区。
wKiom1VsCefCTlGbAALrzXWy5aw871.jpg

   3. 查看新分区

使用“fdisk -l”命令,即可查看到,新的分区xvdb1已经创建完成。
wKioL1VsC4uh1ugGAAKB9We2nok798.jpg

   4. 格式化新分区

在进行分区格式化时,用户可以自行决定文件系统的格式,如ext2、ext3等。
这里以“ext3”为例:
使用下面的命令对新分区进行格式化。

mkfs.ext3 /dev/xvdb1


wKiom1VsCf7zF2eXAALj8UM-uFs741.jpg

   5. 挂载新分区

使用命令“mkdir /mydata”创建mydata目录,再通过“mount /dev/xvdb1 /mydata”命令手动挂载新分区后,用“df -h”命令查看,出现以下信息说明挂载成功,即可以查看到数据盘了。
wKioL1VsC6KCdCZeAACfOee6Pno968.jpg

   6. 添加分区信息

如果希望服务器在重启或开机时能自动挂载数据盘,必须将分区信息添加到/etc/fstab中。如果没有添加,则服务器重启或开机后,都不能自动挂载数据盘。
使用“echo '/dev/xvdb1 /mydata ext3 defaults 0 0' >>/etc/fstab”命令添加分区信息后,使用“cat /etc/fstab”命令查看,出现以下信息表示添加分区信息成功。
wKioL1VsC7yjt6KhAAEbZ9BgU7M933.jpg

服务器环境下通过YUM安装软件

对于Yum下载源,不需要添加软件源,可以直接安装软件包。

   1. 安装步骤

1. 配置yum源:

这采用了搜狐的开源yum源。

2. 在root权限下,通过命令 yuminstall 来安装软件,示例如下:
wKiom1VsCjOhHKLnAAD7K8FdVNc882.jpg

3. 系统会自动搜索相关的软件包和依赖关系,并且在界面中提示用户确认搜索到的软件包是否合适,如下图所示:
wKioL1VsC9mRe9g4AAGS0dXsT8A512.jpg

4. 输入“Y”确认后,开始安装软件,安装完成后会提示“Complete”,如下图所示:
wKiom1VsCk3gQ4B2AADoUN9ueaE011.jpg

   2. 安装的软件信息查看

软件安装完成后,可通过命令 rpm -ql 查看软件包具体的安装目录。
以查看nginx的安装目录为例:

#rpm-ql nginx

结果如下:
wKiom1VsClnjq8GZAAFctuB9o8o562.jpg

可通过命令 rpm -q 查看软件包的版本信息。
以查看nginx的版本为例:

#rpm-q nginx

结果如下(实际的版本可能和此版本不一致,请以实际查询到的版本为准):
wKioL1VsC__DoGENAAArrDgi4zo543.jpg

系统软件环境配置

1. 配置nginx

1. 启动nginx服务。
命令如下:

[iyunv@VM_185_51 /]# service nginx restart


2. 测试nginx服务是否正常运行。
如果最后显示:`index.html' saved ,说明nginx服务正常。

[iyunv@VM_185_51 /]# wget http://127.0.0.1
--2013-02-20 17:07:26-- http://127.0.0.1/
Connecting to 127.0.0.1:80...connected.
HTTP request sent, awaitingresponse... 200 OK
Length: 151 [text/html]
Saving to: `index.html'

100%[==========================================================================================>]151 --.-K/s in 0s

2013-02-20 17:07:26 (37.9 MB/s) - `index.html' saved[151/151]


3. 在浏览器中,通过服务器公网IP查看nginx服务是否正常运行。
如果显示如下,说明nginx安装配置成功。
wKiom1VsCpDgUp2pAAD2X9_0wYU335.jpg

2. 配置PHP

1. 启动php-fpm。

[iyunv@zzxtbl /]# service php-fpm start


2. 修改php-fpm和nginx的配置,实现nginx和php联动。
(1)查看php-fpm默认配置。

[iyunv@zzxtbl /]# cat /etc/php-fpm.d/www.conf |grep -i'listen ='
listen = 127.0.0.1:9000

(2)php-fpm的默认配置的监听端口为9000,现在只用修改配置,将php解析的请求转发到127.0.0.0:9000处理即可。
修改nginx配置,修改命令如下:

[iyunv@zzxtbl /]# vim /etc/nginx/conf.d/default.conf

修改完成后实际配置如下,红色文字为修改过的部分:

server {

  listen      80;

  root   /usr/share/nginx/html;

  server_name localhost;

  #charset koi8-r;

  #access_log /var/log/nginx/log/host.access.log main;

  location / {

      index index.html index.htm;

  }

  #error_page 404              /404.html;

  # redirect server error pages to the staticpage /50x.html

  #

  error_page  500 502 503 504  /50x.html;

  location = /50x.html {

      root  /usr/share/nginx/html;

  }

  # proxy the PHP scripts to Apache listeningon 127.0.0.1:80

  #

  #location ~ .php$ {

  #   proxy_pass   http://127.0.0.1;

  #}

  # pass the PHP scripts to FastCGI serverlistening on 127.0.0.1:9000

  #

  location ~ .php$ {

      fastcgi_pass   127.0.0.1:9000;

      fastcgi_index   index.php;

      fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

      include        fastcgi_params;

  }

  # deny access to .htaccess files, if Apache'sdocument root

  # concurs with nginx's one

  #

  #location ~ /.ht {

  #   deny  all;

  #}

}

修改完成后,按“Esc”键,输入“:wq”,保存文件并返回。
通过下面的命令,查看配置是否正确:

[iyunv@zzxtbl /]# cat /etc/nginx/conf.d/default.conf

   3. 配置生效

重启nginx,使配置生效。
命令如下:

[iyunv@zzxtbl /]# service nginx restart
Stopping nginx: [ OK ]
Starting nginx: [ OK ]

4. 环境配置验证

1. 在web目录下创建index.php。
命令如下:

[iyunv@zzxtbl /]# vim /usr/share/nginx/html/index.php

index.php文件的内容如下:

echo "TestPage";
echo "hello world";
?>

2. 在浏览器中,通过服务器公网IP查看环境配置是否成功。
如果页面可以显示“hello world”,说明配置成功。
wKiom1VsCqLx78T7AAEe479Njew856.jpg

部署代码到服务器


用户需要使用FTP通道,将应用程序从用户自己的服务器上传到服务器上。
本文介绍本地环境为Windows,如何将应用程序上传到服务器。

在服务器配置FTP服务


1. 在root权限下,通过如下命令安装Vsftp。

[iyunv@zzxtbl ~]# yum install vsftpd


2. 在启动vsftpd服务之前,需要登录云服务器修改配置文件,将匿名登录禁用掉。
打开配置文件,命令如下:

[iyunv@zzxtbl ~]# vim /etc/vsftpd/vsftpd.conf

在配置文件中第11行的“anonymous_enable=YES”前面加上#号,即将匿名登录禁用。

3. 读取生效配置。

[iyunv@zzxtbl ~]# cat /etc/vsftpd/vsftpd.conf |grep^[^#]
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES


4. 启动vsftpd服务。

[iyunv@zzxtbl ~]# service vsftpd start


5. 设置FTP用户账号。设置成功后,即可通过该账号登录FTP服务器。
(1)设置FTP用户的账号,例如账号为“ftpuser1”,目录为/home/ftpuser1,且设置不允许通过ssh登录。

[iyunv@zzxtbl ~]# useradd -d /home/ftpuser1 -s/sbin/nologin ftpuser1

(2)设置账号对应的密码,例如密码为“ftpuser1”。

[iyunv@zzxtbl ~]# passwd ftpuser1


6. 修改vsftpd的pam配置,使用户可以通过自己设置的FTP用户帐号和密码连接到云服务器。
(1)修改pam。

[iyunv@zzxtbl ~]# vim /etc/pam.d/vsftpd

内容修改为:

#%PAM-1.0
auth required/lib64/security/pam_listfile.so item=user sense=deny file=/etc/ftpusersonerr=succeed
auth required/lib64/security/pam_unix.so shadow nullok
auth required/lib64/security/pam_shells.so
account required/lib64/security/pam_unix.so
session required/lib64/security/pam_unix.so

(2)确认修改后的文件是否正确。

[iyunv@zzxtbl ~]# cat /etc/pam.d/vsftpd #%PAM-1.0
auth required/lib64/security/pam_listfile.so item=user sense=deny file=/etc/ftpusersonerr=succeed
auth required/lib64/security/pam_unix.so shadow nullok
auth required/lib64/security/pam_shells.so
account required/lib64/security/pam_unix.so
session required/lib64/security/pam_unix.so

(3)重启vsftpd服务,使修改生效。

[iyunv@zzxtbl ~]# service vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]

下载并安装开源软件Flashfxp 5.1

http://www.flashfxp.com/download

连接FTP

运行flashfxp,按下图所示进行配置,配置后点击“快速链接”:
wKioL1VsDE2wxgEZAAOs64pynhQ585.jpg 配置信息说明如下:
(1)主机:服务器的公网IP(在云服务器“管理视图”页面可查看服务器的公网IP)。
(2)用户名:中设置的FTP用户的账号,这里以“ftpuser1”为例。
(3)密码:中设置的FTP用户账号对应的密码,这里以“ftpuser1”为例。
(4)端口:FTP监听端口,默认为“21”。

上传文件到服务器

上传文件时,鼠标选中本地文件,拖拽到远程站点,即将文件上传到了服务器。

注意:
云服务器FTP通道不支持上传tar压缩包后自动解压,以及删除tar包功能。

上传文件示意图如下所示:
wKioL1VsDFrRzPV2AADXrxyGTDI082.jpg

通过公网IP对外提供服务


1. 根据部署代码服务器的说明,通过FTP连接到远程站点(服务器)后,在远程站点找到nginx的访问目录,将需要用户访问的文件放到该目录下。
wKiom1VsCszAtJbZAAGFmSC2na8396.jpg

2.在浏览器输入服务器公网IP,以及相应路径下的文件,就可以访问到部署在服务器的文件,即实现通过公网IP提供应用服务。
这里以helloworld为例,如下图所示,即提供服务成功:
wKioL1VsDHOQzGWEAAEexx2LbQI191.jpg


  以上就是LNMP+FTP的网站架构的部署。



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-73055-1-1.html 上篇帖子: lnmp的rpm包制作 下篇帖子: LAMP一键源码安装脚本最新版(实测有效) 网站
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表