快速搭建LNMP环境Linux+Nginx+Mysql+Php

  • Deploy
  • 2,754 clicked

1. 安装Linux

1.1. 安装vsftpd

1.2. 配置vsftpd配置文件

vi /etc/vsftpd/vsftpd.conf

  • =》禁止匿名访问: 将配置文件中anonymous_enable=YES “改为 “anonymous_enable=NO
  • =》所有的用户均不能通过cd切换到其他目录

  • 通过搭配能实现以下几种效果
  1. 当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
  2. 当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。
  3. 当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。
  4. 当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。

1.3. 添加ftp用户

登录Linux主机后,运行命令:useradd ftpadmin -s /sbin/nologin

该账户路径默认指向/home/ftpadmin目录,不允许该用户通过shell登录Linux服务器。

如果需要将用户指向其他目录,请运行命令:useradd ftpadmin -s /sbin/nologin –d /usr/local/nginx(其他目录)

1.4. 修改ftp用户密码

设置ftpadmin用户密码,运行命令:passwd ftpadmin

1.5. 启动vsftpd服务

登录Linux主机后,运行命令:systemctl start vsftpd

如果让FTP每次开机自动启动,运行命令: systemctl enable vsftpd

1.6. 可能遇到的问题

  • 修改chroot_local_user=YES chroot_list_enable=NO之后,连接ftp可能会报错: 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
  • "如果启用chroot,必须保证ftp根目录不可写,这样对于ftp根直接为网站根目录的用户不方便,所以建议将ftp根目录/home/ftpadmin访问权限改写如下 chmod a-w /home/ftpadmin

2. 安装Nginx最新版

2.1. 下载编译安装

模块依赖性Nginx需要依赖下面3个包: zlib zlib-devel openssl openssl-devel pcre pcre-devel
这里可以通过yum安装,也可以根据实际情况安装指定的安装包。

依赖包安装顺序依次为:openssl、zlib、pcre, 最后安装Nginx包。这里我们采用安装该部分默认安装包;

2.2. 配置nginx服务

  • 创建默认配置目录并拷贝文件

  • 这里修改nginx配置文件内容

2.3. 运维nginx服务

2.3.1. Nginx开机启动(方法1,适用CentOS7,systemctl管理服务)

  1. CentOS7系统服务脚本目录

用户(user):用户登录后才能运行的程序,存在用户(user)。

/usr/lib/systemd/user

系统(system):如需要开机没有登陆情况下就能运行的程序,存在系统服务(system)里。

/usr/lib/systemd/system

  1. 编写service脚本
  • 服务文件名以.service结尾: vim /usr/lib/systemd/system/nginx.service
  • 编写脚本内容(固定格式),这里文件路径需要根据实际情况修改:

以上路径必须均为绝对路径!!然后执行systemctl daemon-reload加载nginx服务。而ExecStart、ExecReload、ExecStop的值也可以是"/etc/init.d"下的自定义的sh脚本文件的绝对路径.

采用这种方式来实现 uWSGI 开机启动的:

/etc/init.d目录下的uWSGI服务启动脚本文件"uwsgi-start.sh":

2.3.2. 设置开机启动(强大的CentOS服务管理工具systemctl)

如果提示"Failed to execute operation: Access denied",输入systemctl daemon-reexec可解决。

2.3.3. Nginx开机启动(方法2,适用CentOS7以下)

首先,查看nginx配置文件目录nginx -t

然后,在Linux系统的"/etc/init.d/"目录下创建nginx脚本文件,使用如下命令:

在脚本中添加如下命令:

保存脚本文件后对所有用户追加可执行权限:

先将nginx服务加入chkconfig管理列表:

设置终端模式开机启动:

3. MYSQL安装操作

4. 安装PHP

4.1. nginx server configuration 连接php

修改配置文件路径/etc/nginx/nginx.conf或是/usr/local/nginx/conf/nginx.conf

4.2. 启动php连接nginx

赞赏

微信赞赏支付宝赞赏

发表评论

邮箱地址不会被公开。 必填项已用*标注