一、部署前准备
1. 系统要求
- 服务器:Linux(推荐CentOS 7+/Ubuntu 20.04+)或Windows Server 2016+。
- Web服务器:Nginx/Apache(需支持PHP 7.4+)。
- 数据库:MySQL 5.7+ 或 MariaDB 10.3+。
- PHP扩展:需启用`pdo_mysql`、`gd`、`fileinfo`、`openssl`等。
- 内存:建议4GB以上(生鲜系统可能涉及图片处理,内存不足易卡顿)。
2. 源码获取
- 从官方渠道下载万象源码包(如GitHub仓库或压缩包)。
- 解压后检查目录结构是否完整(通常包含`app`、`public`、`config`等文件夹)。
二、环境配置步骤
1. 安装依赖
- Linux示例(CentOS):
```bash
安装PHP及扩展
yum install -y php php-mysqlnd php-gd php-fileinfo php-openssl
安装Nginx/Apache
yum install -y nginx
安装Composer(PHP依赖管理工具)
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
```
- Windows:
- 通过XAMPP/WAMP一键安装环境,或手动配置PHP+MySQL+Apache。
2. 配置Web服务器
- Nginx配置示例:
```nginx
server {
listen 80;
server_name yourdomain.com;
root /path/to/your/project/public;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
include fastcgi_params;
}
}
```
- 重启Nginx:`systemctl restart nginx`
3. 数据库设置
- 创建数据库并用户:
```sql
CREATE DATABASE万象生鲜;
CREATE USER user@localhost IDENTIFIED BY password;
GRANT ALL PRIVILEGES ON万象生鲜.* TO user@localhost;
FLUSH PRIVILEGES;
```
- 修改配置文件(通常为`config/database.php`):
```php
connections => [
mysql => [
driver => mysql,
host => localhost,
database => 万象生鲜,
username => user,
password => password,
],
],
```
三、代码部署与初始化
1. 上传源码
- 将解压后的源码上传至服务器目录(如`/var/www/html/shengxian`)。
- 确保`public`目录为Web根目录,并设置权限:
```bash
chown -R www-data:www-data /var/www/html/shengxian
chmod -R 755 /var/www/html/shengxian
```
2. 安装依赖
- 进入项目目录,运行:
```bash
composer install --no-dev --optimize-autoloader
```
3. 生成应用密钥
- 运行以下命令生成`APP_KEY`(Laravel框架):
```bash
php artisan key:generate
```
4. 执行迁移与填充
- 初始化数据库表和数据:
```bash
php artisan migrate --seed
```
四、常见问题与解决方案
1. 数据库连接失败
- 原因:配置错误、数据库未启动、权限不足。
- 解决:
- 检查`config/database.php`中的连接信息。
- 确认MySQL服务已启动:`systemctl status mysql`。
- 测试连接:`mysql -u user -p -h localhost`。
2. 500 Internal Server Error
- 原因:权限问题、PHP错误、日志未配置。
- 解决:
- 检查`storage`和`bootstrap/cache`目录权限:
```bash
chmod -R 775 storage bootstrap/cache
```
- 查看Nginx/Apache错误日志定位具体问题。
3. 静态资源404
- 原因:Nginx未正确配置`public`目录。
- 解决:
- 确保Nginx配置中`root`指向`/path/to/project/public`。
- 清除浏览器缓存或强制刷新(`Ctrl+F5`)。
4. 部署后页面空白
- 原因:PHP错误未显示、依赖缺失。
- 解决:
- 临时开启PHP错误显示:
```php
// 在public/index.php开头添加
ini_set(display_errors, 1);
error_reporting(E_ALL);
```
- 检查`composer install`是否成功。
五、性能优化建议
1. 缓存配置:
- 启用Redis或Memcached缓存:
```bash
composer require predis/predis
```
- 修改`.env`文件:
```
CACHE_DRIVER=redis
SESSION_DRIVER=redis
```
2. 队列优化:
- 使用Supervisor管理队列进程(如订单处理):
```ini
[program:shengxian-queue]
command=php artisan queue:work --sleep=3 --tries=3
user=www-data
autostart=true
```
3. 图片处理:
- 使用`Intervention Image`库优化生鲜商品图片加载速度。
六、后续维护
1. 定期备份:
- 数据库备份:`mysqldump -u user -p 数据库名 > backup.sql`
- 代码备份:使用Git或手动打包。
2. 安全更新:
- 关注官方安全公告,及时升级PHP、MySQL等组件。
3. 日志监控:
- 检查`storage/logs/laravel.log`排查异常。
通过以上步骤,您应能顺利完成万象生鲜软件的部署。如遇特定错误,可提供具体日志或截图进一步分析。