总结一下最近一段时间的用阿里云轻量服务器搭建nginx+ftp踩过的坑。

我这里用的系统是centos7.3。

 

nginx的安装搭建

 

1.安装环境

    1.gcc环境安装: yum install gcc-c++

    2.pcre库安装(解析正则表达式): yum install -y pcre pcre-devel

    3.zlib 库安装(压缩和解压缩): yum install -y zlib zlib-devel

    4.openssl库(支持https):yum install -y openssl openssl-devel

 

2.编译安装nginx

    我这里用的是nginx-1.8.0.tar.gz

    1.下载nginx压缩包: wget http://nginx.org/download/nginx-1.8.0.tar.gz

    2. 解压: tar -zxvf nginx-1.8.0.tar.gz

    3.进入nginx-1.8.0目录: cd nginx-1.8.0

    4.参数设置(创建makefile文件): 直接命令行粘贴一下命令

./configure \

--prefix=/usr/local/nginx \

--pid-path=/var/run/nginx/nginx.pid \

--lock-path=/var/lock/nginx.lock \

--error-log-path=/var/log/nginx/error.log \

--http-log-path=/var/log/nginx/access.log \

--with-http_gzip_static_module \

--http-client-body-temp-path=/var/temp/nginx/client\

--http-proxy-temp-path=/var/temp/nginx/proxy\

--http-fastcgi-temp-path=/var/temp/nginx/fastcgi\

--http-uwsgi-temp-path=/var/temp/nginx/uwsgi\

--http-scgi-temp-path=/var/temp/nginx/scgi

5.编译安装

    make

    make   install

 

3.启动nginx

        cd /usr/local/nginx/sbin/

        在此目录下启动:  ./nginx

      其他命令:  停止命令:  ./nginx -s stop

                          重启命令:   ./nginx -s restart

                          重新加载配置文件:   ./nginx -s reload

 

注意:启动时报错未找到/var/temp/nginx

            直接创建一个就好    mkdir    -p  /var/temp/nginx

 

到此nginx就搭建完成了,可以在浏览器上试试http://加上你的服务器ip.

 

 

ftp安装搭建

1,安装ftp,安装完后有/    etc/vsftpd/vsftpd.conf文件,是vsftpd的配置文件

    yum  -y install vsftpd

2,添加一个用户    useradd ftpuser

    这样一个用户建完,可以用这个登录,记得用普通登录不要用匿名了。登录后默认的路径为 /home/ftpuser.     

3,给该用户添加密码  passwd ftpuser

     输入两次密码后修改密码。

4.  配置防火墙,开启端口(centos7中默认使用的是firewall防火墙)

         开启21端口   firewall-cmd --zone=public --add-port=21/tcp --permanent

         ftp服务       firewall-cmd  --zone=public --add-service=ftp --permanent  ( --permanent使设置永久生效)

         重启防火墙   systemctl restart firewalld

    由于阿里云的轻量应用服务器默认是关闭selinux的,我就不详述设置方式了,建议查看服务器是否开启selinux,若开启了自行查找设置方法。

5.设置被动模式,关闭匿名访问

    修改/etc/vsftpd/vsftpd.conf配置文件

   设置anonymous_enable = NO   关闭匿名访问了

   另外在文件末尾加上 

pasv_min_port=30000    

   pasv_max_port=30999

   保存修改,重启vsftpd即可

6. 防火墙开启被动模式的端口

    fire-cmd --zone=public  --add-port=30000-30999/tcp --permanent

    重启防火墙 

 

   到这ftp 也搭好了。以上的安装及搭建过程网上到处都有,接下来得是重点。本人小白,踩N多天的坑,一把鼻涕一把泪的踩完了。

 

云服务器防火墙的配置

        阿里云的轻量应用服务器控制台左侧有个防火墙,把ftp,http,HTTPS,还有全部的tcp全部添加。

远程连接FTP,能连接上,但是访问不了文件。

       这里是访问权限的问题,把/home下你创建的用户对应的文件夹的文件权限打开。

        比如我的ftpuser   ,  chmod  a+w  /home/ftpuser

远程访问ftp中的资源,出现404错误

         这里需要更改nginx.conf配置文件,路径为/usr/local/nginx/conf/nginx.conf

            将第一行的注释取消,改为 user root;

           

nginx ftp协议_nginx

远程访问ftp中的资源,出现403错误

        这里仍然是文件的访问权限问题,/home/ftpuser下的要访问的文件夹开启权限

 

chmod   a+w /home/ftpuser/(文件名)

本次搭建图片服务器遇到的坑也就这么多了,伤心流泪之余,也学到了不少。小小总结,希望能帮助到跟我一样的小白。