Ubuntu环境下PHP项目文件管理指南
在管理PHP项目文件前,需确保Ubuntu系统已安装PHP运行环境(包括Web服务器、PHP核心及扩展)。推荐使用LAMP(Linux+Apache+MySQL+PHP)组合,通过以下命令快速安装:
sudo apt update
sudo apt install apache2 mysql-server php libapache2-mod-php php-mysql
安装完成后,通过php -v
验证PHP版本,systemctl status apache2
确认Apache服务运行状态。
建议将PHP项目存放在/var/www/
(Web服务器默认根目录),以项目名称命名子目录(如my_project
):
sudo mkdir -p /var/www/my_project
为确保Apache(运行用户为www-data
)能正常访问项目文件,需调整目录所有权与权限:
sudo chown -R www-data:www-data /var/www/my_project # 将所有者设为www-data用户组
sudo chmod -R 755 /var/www/my_project # 允许所有者读写执行,其他用户读执行
注意:755
权限适用于目录,若项目包含上传文件等需写入的目录(如uploads/
),需单独设置为775
。
使用Git跟踪项目文件变更,避免手动管理混乱。操作步骤如下:
sudo apt install git
git init
创建本地仓库。git remote add origin https://github.com/username/my_project.git
git add . # 添加所有文件到暂存区
git commit -m "Initial commit" # 提交本地仓库
git push -u origin main # 推送至远程仓库
提示:敏感信息(如数据库密码)需通过.gitignore
文件排除,避免泄露。
为了让浏览器访问项目,需配置Apache虚拟主机:
sudo nano /etc/apache2/sites-available/my_project.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName my_project.local
ServerAlias www.my_project.local
DocumentRoot /var/www/my_project/public # 公共访问目录(需创建)
<Directory /var/www/my_project/public>
Options Indexes FollowSymLinks MultiViews
AllowOverride All # 允许.htaccess覆盖配置
Require all granted # 允许所有用户访问
</Directory>
ErrorLog ${APACHE_LOG_DIR}/my_project_error.log
CustomLog ${APACHE_LOG_DIR}/my_project_access.log combined
</VirtualHost>
sudo a2ensite my_project.conf # 启用虚拟主机
sudo systemctl restart apache2 # 重启服务
/etc/hosts
,添加127.0.0.1 my_project.local
,实现本地域名解析。使用Composer管理PHP依赖(如Laravel、Symfony等框架或第三方库):
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
composer.json
:
在项目根目录运行composer init
,按提示填写项目信息(如名称、依赖)。composer install
依赖包会自动下载至vendor/
目录。scp
(上传)、rsync
(同步)快速传输文件,例如:scp -r local_project/ user@server_ip:/var/www/ # 上传本地项目到服务器
rsync -avz /local/path/ user@server_ip:/remote/path/ # 同步文件(保留权限)
.env
文件(需添加至.gitignore
),而非代码中。app/
放核心代码、public/
放静态资源),提高可维护性(参考)。tar
或rsync
定期备份项目文件与数据库,防止数据丢失。