一、使用Samba实现网络文件共享(适合局域网内多设备访问)
Samba是CentOS上最常用的文件共享服务,可实现Windows、Linux等多设备访问共享项目。
sudo yum install samba samba-client samba-common命令安装。/etc/samba/smb.conf文件,末尾添加以下内容(替换/path/to/your/php/project为实际项目路径):[php_project]
path = /path/to/your/php/project
valid users = smbuser # 允许访问的Samba用户
read only = no # 允许写入
browsable = yes # 可浏览
public = yes # 公开访问(若需密码验证,设为no)
writable = yes # 可写
sudo mkdir -p /path/to/your/php/project
sudo chown -R nobody:nogroup /path/to/your/php/project # 所有权设为nobody(Samba默认用户)
sudo chmod -R 0775 /path/to/your/php/project # 允许用户和组读写执行
sudo useradd -M -s /sbin/nologin smbuser # 创建仅用于Samba的用户(无登录权限)
sudo smbpasswd -a smbuser # 设置Samba密码(需输入两次)
sudo systemctl restart smb
sudo systemctl enable smb # 开机自启
sudo firewall-cmd --permanent --zone=public --add-service=samba # 允许Samba流量
sudo firewall-cmd --reload # 重载防火墙规则
File > Settings > Build, Execution, Deployment > Deployment。+号,选择Samba类型,填写以下信息:
CentOS_Samba);smbuser)及密码;/path/to/your/php/project)。Test Connection测试连接,成功后点击OK保存配置。Mappings标签页,将本地项目文件夹映射到服务器共享目录(如本地D:\php_projects\my_project映射到服务器/path/to/your/php/project)。VCS > Deployment > Sync with Deployment手动同步,或勾选Tools > Deployment > Automatic Upload实现自动同步。二、使用SFTP/SSH实现安全远程共享(适合远程开发)
SFTP基于SSH协议,安全性更高,适合远程服务器开发。
sudo yum install openssh-server
sudo systemctl start sshd
sudo systemctl enable sshd
ssh-keygen -t rsa(默认保存到~/.ssh/id_rsa);ssh-copy-id your_centos_username@server_ip;ssh your_centos_username@server_ip。File > Settings > Build, Execution, Deployment > Deployment,点击+号选择SFTP。22);root或你的普通用户);Password(输入密码)或Key pair(选择本地私钥文件);/var/www/html/my_project)。Test Connection测试连接,成功后点击OK保存配置。Mappings标签页,将本地项目文件夹映射到服务器项目路径(如本地D:\php_projects\my_project映射到服务器/var/www/html/my_project)。VCS > Deployment > Sync with Deployment手动同步,或设置自动同步(Tools > Deployment > Automatic Upload)。三、使用版本控制系统(Git)实现代码同步(适合团队协作)
Git是团队协作的标准工具,可实现代码版本管理和远程仓库同步。
sudo yum install git
File > Settings > Version Control > Git,点击Test按钮验证Git可执行文件路径是否正确(通常为/usr/bin/git)。Git > Initialize Repository。VCS > Git > Remotes,点击+号,输入远程仓库URL(如GitHub的https://github.com/username/repo.git或GitLab的git@gitlab.com:username/repo.git),点击OK。Git > Commit Directory,输入提交信息后点击Commit and Push,将本地代码推送到远程仓库。Git > Pull,将远程代码同步到本地。以上三种方法覆盖了CentOS上PhpStorm共享项目的常见场景,可根据需求选择: