如何在 CentOS 7 / Ubuntu 15.04 上安装 PHP 框架 Laravel

Kashif 的头像

·

·

·

16,928 次阅读

大家好,这篇文章将要讲述如何在 CentOS 7 / Ubuntu 15.04 上安装 Laravel。如果你是一个 PHP Web 的开发者,你并不需要考虑如何在琳琅满目的现代 PHP 框架中选择,Laravel 是最轻松启动和运行的,它省时省力,能让你享受到 web 开发的乐趣。Laravel 信奉着一个普世的开发哲学,通过简单的指导创建出可维护代码是最优先的,你将保持着高速的开发效率,能够随时毫不畏惧更改你的代码来改进现有功能。

Laravel 安装并不繁琐,你只要跟着本文章一步步操作就能在 CentOS 7 或者 Ubuntu 15 服务器上安装。

1) 服务器要求

在安装 Laravel 前需要安装一些它的依赖前提条件,主要是一些基本的参数调整,比如升级系统到最新版本,sudo 权限和安装依赖包。

当你连接到你的服务器时,请确保你能通以下命令能成功的使用 EPEL 仓库并且升级你的服务器。

CentOS-7

# yum install epel-release

# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

# yum update

Ubuntu

# apt-get install python-software-properties
# add-apt-repository ppa:ondrej/php5

# apt-get update

# apt-get install -y php5 mcrypt php5-mcrypt php5-gd

2) 防火墙安装

系统防火墙和 SELinux 设置对于用于产品应用安全来说非常重要,当你使用测试服务器的时候可以关闭防火墙,用以下命令行设置 SELinux 成 宽容模式 permissive 来保证安装程序不受它们的影响。

# setenforce 0

3) Apache, MariaDB, PHP 安装

Laravel 安装程序需要完成安装 LAMP 整个环境,需要额外安装 OpenSSL、PDO,Mbstring 和 Tokenizer 等 PHP 扩展。如果 LAMP 已经运行在你的服务器上你可以跳过这一步,直接确认一些必要的 PHP 插件是否安装好。

要安装完整 AMP 你需要在自己的服务器上运行以下命令。

CentOS

# yum install httpd mariadb-server php56w php56w-mysql php56w-mcrypt php56w-dom php56w-mbstring

要在 CentOS 7 上实现 MySQL / Mariadb 服务开机自动启动,你需要运行以下命令。

# systemctl start httpd
# systemctl enable httpd

#systemctl start mysqld
#systemctl enable mysqld

在启动 MariaDB 服务之后,你需要运行以下命令配置一个足够安全的密码。

#mysql_secure_installation

Ubuntu

# apt-get install mysql-server apache2 libapache2-mod-php5 php5-mysql

4) 安装 Composer

在我们安装 Laravel 前,先让我们开始安装 composer。安装 composer 是安装 Laravel 的最重要步骤之一,因为 composer 能帮我们安装 Laravel 的各种依赖。

CentOS/Ubuntu

在 CentOS / Ubuntu 下运行以下命令来配置 composer 。

# curl -sS https://getcomposer.org/installer | php
# mv composer.phar /usr/local/bin/composer
# chmod +x /usr/local/bin/composer
composer installation

5) 安装 Laravel

我们可以运行以下命令从 github 上下载 Laravel 的安装包。

# wget https://github.com/laravel/laravel/archive/develop.zip

运行以下命令解压安装包并且移动 document 的根目录。

# unzip develop.zip

# mv laravel-develop /var/www/

现在使用 compose 命令来安装目录下所有 Laravel 所需要的依赖。

# cd /var/www/laravel-develop/
# composer install
compose laravel

6) 密钥

为了加密服务器,我们使用以下命令来生成一个加密后的 32 位的密钥。

# php artisan key:generate

Application key [Lf54qK56s3qDh0ywgf9JdRxO2N0oV9qI] set successfully

现在把这个密钥放到 ‘app.php’ 文件,如以下所示。

# vim /var/www/laravel-develop/config/app.php
Key encryption

7) 虚拟主机和所属用户

在 composer 安装好后,分配 document 根目录的权限和所属用户,如下所示。

# chmod 775 /var/www/laravel-develop/app/storage

# chown -R apache:apache /var/www/laravel-develop

用任意一款编辑器打开 apache 服务器的默认配置文件,在文件最后加上虚拟主机配置。

# vim /etc/httpd/conf/httpd.conf

via: http://linoxide.com/linux-how-to/install-laravel-php-centos-7-ubuntu-15-04/

作者:Kashif 译者:NearTan 校对:Caroline

本文由 LCTT 原创编译,Linux中国 荣誉推出

5 条回复

  1. 来自江苏盐城的 Chrome 47.0|GNU/Linux 用户 的头像
    来自江苏盐城的 Chrome 47.0|GNU/Linux 用户

    composer国内被墙,使用代理:
    composer config -g repositories.packagist composer HTTP://packagist.phpcomposer.com

    来自盐城
  2. 来自广东深圳的 Safari 10.0|Mac 10.12 用户 的头像
    来自广东深圳的 Safari 10.0|Mac 10.12 用户

    composer install 这一步的时候直接卡住,composer install -vvv可解决
    另外<pre>ServerName laravel-develop
    DocumentRoot /var/www/laravel/public
    start Directory /var/www/laravel
    AllowOverride All
    Directory close<pre>
    添加后,systemctl restart httpd启动失败!

    来自深圳
  3. 来自广东深圳的 Safari 10.0|Mac 10.12 用户 的头像
    来自广东深圳的 Safari 10.0|Mac 10.12 用户

    还有一件事,mysql启动不起来
    #systemctl start mysqld
    #systemctl enable mysqld
    表示失败,我就是死在这一步放弃的!!!

    来自深圳
  4. linux [Chrome 56.0|Mac 10.11] 的头像
    linux [Chrome 56.0|Mac 10.11]

    这里的配置是源作者犯轴,弄错了,我们翻译校对时也没想到配置文件还能抄错。已经更正,请参阅。

    来自北京
  5. linux [Chrome 56.0|Mac 10.11] 的头像
    linux [Chrome 56.0|Mac 10.11]

    这种情况下,你看看日志就知道哪里错了。 journalctl

    来自北京

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注