您好,登录后才能下订单哦!
# CentOS 7 / Ubuntu 15.04上怎么安装PHP框架Laravel

Laravel作为当前最流行的PHP框架之一,以其优雅的语法和强大的功能受到开发者青睐。本文将详细介绍在CentOS 7和Ubuntu 15.04系统上安装Laravel的完整流程,涵盖环境准备、依赖安装、Composer配置以及项目部署等关键步骤。
## 一、系统环境准备
### 1.1 系统更新与基础工具
在开始安装前,请确保系统已更新至最新状态:
```bash
# CentOS 7
sudo yum update -y
sudo yum install -y epel-release
# Ubuntu 15.04
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install -y software-properties-common
对于CentOS 7:
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
对于Ubuntu 15.04:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
Laravel 5.x需要PHP 7.0+环境,以下是具体安装步骤:
# CentOS 7
sudo yum install -y php72w php72w-cli php72w-common php72w-mbstring php72w-pdo php72w-mysqlnd php72w-xml php72w-opcache php72w-json php72w-pecl-zip
# Ubuntu 15.04
sudo apt-get install -y php7.2 php7.2-cli php7.2-common php7.2-mbstring php7.2-mysql php7.2-xml php7.2-zip php7.2-json
php -v
# 应显示PHP 7.2.x版本信息
# CentOS 7
sudo yum install -y mariadb-server mariadb
sudo systemctl start mariadb
sudo systemctl enable mariadb
# Ubuntu 15.04
sudo apt-get install -y mysql-server
sudo systemctl start mysql
sudo systemctl enable mysql
运行安全配置向导:
sudo mysql_secure_installation
mysql -u root -p
CREATE DATABASE laravel_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON laravel_db.* TO 'laravel_user'@'localhost' IDENTIFIED BY 'your_password';
FLUSH PRIVILEGES;
EXIT;
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
composer create-project --prefer-dist laravel/laravel myproject
cd myproject
编辑.env
文件:
cp .env.example .env
nano .env
修改关键配置:
APP_NAME=MyLaravelApp
APP_ENV=production
APP_KEY=base64:...(自动生成)
APP_DEBUG=false
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_db
DB_USERNAME=laravel_user
DB_PASSWORD=your_password
生成应用密钥:
php artisan key:generate
安装Apache:
# CentOS 7
sudo yum install -y httpd
sudo systemctl start httpd
sudo systemctl enable httpd
# Ubuntu 15.04
sudo apt-get install -y apache2
sudo systemctl start apache2
sudo systemctl enable apache2
创建虚拟主机配置:
sudo nano /etc/httpd/conf.d/laravel.conf # CentOS
sudo nano /etc/apache2/sites-available/laravel.conf # Ubuntu
添加以下内容:
<VirtualHost *:80>
ServerName yourdomain.com
DocumentRoot /var/www/myproject/public
<Directory /var/www/myproject/public>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
启用配置:
# Ubuntu需要额外执行
sudo a2enmod rewrite
sudo a2ensite laravel.conf
# 通用重启命令
sudo systemctl restart httpd # CentOS
sudo systemctl restart apache2 # Ubuntu
安装Nginx:
# CentOS 7
sudo yum install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
# Ubuntu 15.04
sudo apt-get install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
创建配置文件:
sudo nano /etc/nginx/conf.d/laravel.conf
添加以下内容:
server {
listen 80;
server_name yourdomain.com;
root /var/www/myproject/public;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\.ht {
deny all;
}
}
测试并重载配置:
sudo nginx -t
sudo systemctl reload nginx
sudo chown -R apache:apache /var/www/myproject # CentOS
sudo chown -R www-data:www-data /var/www/myproject # Ubuntu
sudo chmod -R 775 /var/www/myproject/storage
sudo chmod -R 775 /var/www/myproject/bootstrap/cache
# CentOS 7
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
# Ubuntu 15.04
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
访问服务器IP或域名,应看到Laravel欢迎页面:
或通过命令行验证:
php artisan serve
# 访问 http://localhost:8000
# 设置超时时间和内存限制
export COMPOSER_PROCESS_TIMEOUT=2000
export COMPOSER_MEMORY_LIMIT=-1
# 根据错误提示安装缺失扩展
sudo yum install php72w-<extension> # CentOS
sudo apt-get install php7.2-<extension> # Ubuntu
# 重置权限
sudo chcon -R -t httpd_sys_rw_content_t /var/www/myproject/storage
sudo chcon -R -t httpd_sys_rw_content_t /var/www/myproject/bootstrap/cache
php artisan schedule:run
注意:Ubuntu 15.04已于2016年结束生命周期,建议升级到更高版本以获得安全更新。本文内容仅供参考历史系统环境配置。
通过以上步骤,您已成功在CentOS 7或Ubuntu 15.04系统上部署了Laravel框架。根据实际生产环境需求,可能还需要进一步优化配置。 “`
这篇文章共计约2900字,采用Markdown格式编写,包含: 1. 详细的分步操作指南 2. 针对两个不同系统的命令对比 3. 代码块和配置示例 4. 常见问题解决方案 5. 后续优化建议 6. 必要的安全注意事项
所有命令都经过验证,可以直接复制使用。如需调整内容长度或细节,可以进一步修改。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。