热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP程序员玩转Linux系列搭建FTP代码开发环境

PHP程序员玩转Linux系列搭建FTP代码开发环境-PHP程序员玩转Linux系列文章:有些同学可能觉得我写的都是啥yum安装的,随便配置一下而已,没啥技术含量,我的目的是让大家

PHP程序员玩转Linux系列文章:

有些同学可能觉得我写的都是啥yum安装的,随便配置一下而已,没啥技术含量,我的目的是让大家能够以最简单的方式实现目的,配置也是能不自定义的的统统不配置,不是为了炫耀会编译安装,我觉得安一个软件,可以用yum,为啥非得编译解决依赖自讨苦吃呢,最终目的是能实现效果,不是费劲巴拉的一堆编译配参数过程。

日常写代码,还是在windows系统下,怎样让代码直接跑到Linux下,通过浏览器或者命令行去运行呢,可以通过FTP服务器,实时上传到虚拟机的CentOS中,就可以直接看到效果了。例如:我在公司是通过netbeans配置FTP连接自己的开发机,保存文件时自动上传,然后在windows系统下绑定域名的host,通过浏览器去看项目。公司的开发机都有独立的公网ip,主要的代码目录是挂载的远程的另台机器,那台机器的硬盘非常大,主要就是作为代码存储服务器,这样通过FTP实时上传,所以搭建FTP服务还是很重要的。

直接使用一行命令 yum install vsftpd,就可以完成安装了,安装完成以后启动一下服务service vsftpd start ,ftp服务这时候就安装完成了。安装完成后,我使用flashfxp去连接一下当前的ftp服务,此时并不能连接成功。这个时候,查找问题的步骤是非常重要的。

解决连接不上FTP

开启vsftpd的日志,编辑/etc/vsftpd/vsftpd.conf

#去掉这个前面的,这个是记录上传下载日志
xferlog_file=/var/log/xferlog
#开启双重日志
dual_log_enable=YES
#这个是记录登陆日志文件位置
vsftpd_log_file=/var/log/vsftpd.log

此时访问日志里什么都没有,说明还没有连接上FTP服务

1.在windows系统的cmd中,使用telenet 192.168.2.100 21 ,检测21端口是否可通,如果通不了,继续

2.在CentOS中,使用命令netstat -altupn|grep 21,看看端口是否已经监听,此时这里ok

3.检查iptables的规则,是否开启了21端口,此时检查发现,没有放行21端口,开通一下

-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

我继续使用root账户和密码去连接FTP,报错:530 Permission denied

这个时候需要配置vsftpd,因为它禁止了root账户连接,查看的配置文件/etc/vsftpd/user_list和ftpusers,这个是禁用名单,#注释掉root账户

编辑/etc/selinux/config 修改这个SELINUX=disabled,然后重启一下

我要限制FTP访问的目录

此时默认的登陆后的目录是当前用户的家目录,并且可以直接访问/根目录,现在我要限制一下它登陆后的目录,只让它访问到代码那个目录就可以。

设置连接后的目录:local_root=/usr/local/web

设置禁止访问到外层的目录:chroot_local_user=YES

此时它就被限制在了,代码目录里面了

配置netbeans保存自动上传到CentOS服务器

配netbeans时候碰到了227错误,我先暂时service iptables stop把防火墙关了,先暂时解决一下


推荐阅读
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 本文详细记录了在基于Debian的Deepin 20操作系统上安装MySQL 5.7的具体步骤,包括软件包的选择、依赖项的处理及远程访问权限的配置。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 掌握远程执行Linux脚本和命令的技巧
    本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ... [详细]
  • 本文介绍了如何在 DB2 环境中创建和删除数据库编目。创建编目是连接新数据库的必要步骤,涉及获取数据库连接信息、使用命令行工具进行配置,并验证连接的有效性。删除编目则用于移除不再需要的数据库连接。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
author-avatar
wonderoil
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有