laravel5安装 数据库配置 模板 路由

安装;

  1. windows安装

需要PHP版本》=5.4.且开启mcrypt加密扩展

都不想安装的可以从https://github.com/overtrue/latest-laravel 这里下载大神整理好的,解压即可使用

首先等安装cpmposer, 提示openssl错误的打开PHP.INI配置文件将extension=php_openssl.dll 前面的注释去掉,大概在第887行。

copmposer安装过程就不说了。

下面开始Laravel 5安装过程,github有下载,这里分享个网盘连接:http://pan.baidu.com/s/1dD50dWH

下载后解压,为了方便你可以解压到网站根目录下。我这里解压到F:/laravel [当然了,这不是我的根目录,需要配置虚拟主机]。

由于众所周知的原因国内安装composer,laravel比较慢,推荐使用镜像安装。

修改laravel目录的composer.json文件

在末尾结束括号前加上:

,
     "repositories": [
        {"type": "composer", "url": "http://comproxy.cn/repo/packagist"},
        {"packagist": false}
    ]

若不能用试试http://pkg.phpcomposer.com/

在文件夹内单击鼠标右键选择安装

几分钟后就安装完成啦!

这时会发现目录下多了个vendor文件夹。

laravel的默认首页是server.php,需要配置下,打开httpd.conf配置文件

找到[大概第249行以下]

<IfModule dir_module>
    DirectoryIndex index.html index.php index.htm l.php server.php
</IfModule>

加上 server.php重启即可。

试试去浏览器打开http://t.com  试看看, 以你自己的安装为准。

到此为止安装成功了,打开慢的原因是使用了谷歌字体, 可以使用国内CDN,找到F:\laravel\resources\views文件夹,打开welcome.blade.php文件,将第五行改为 <link href=‘//ajax.useso.com/css?family=Lato:100‘ rel=‘stylesheet‘ type=‘text/css‘>

360前端公共库:http://libs.useso.com/

接着去试试写个方法,

找到F:\laravel\app\Http文件夹,打开routes.php,加上

/*
|--------------------------------------------------------------------------
| Application Routes
|--------------------------------------------------------------------------
|
| Here is where you can register all of the routes for an application.
| It‘s a breeze. Simply tell Laravel the URIs it should respond to
| and give it the controller to call when that URI is requested.
|
*/
 
Route::get(‘/‘, ‘[email protected]‘);
 
Route::get(‘home‘, ‘[email protected]‘);
 
Route::controllers([
    ‘auth‘ => ‘Auth\AuthController‘,
    ‘password‘ => ‘Auth\PasswordController‘,
]);
Route::get(‘hi‘, function(){
    return "hi";
});

打开浏览器输入http://t.com/public/hi

试看看,这就是路由了。

如需直接访问到public项目文件夹可以配置vhost

<VirtualHost *:80>
    DocumentRoot "F:\laravel\public"
    ServerName t.com    ServerAlias t1.zy62.com  <Directory "F:\laravel>
      Options FollowSymLinks ExecCGI      AllowOverride All
      Order allow,deny      Allow from all
      Require all granted  </Directory></VirtualHost>

2.linux安装

laravel必须PHP>5.4支持mcrypt。

https://github.com/overtrue/latest-laravel 这里下载大神整理好的,解压即可使用

nginx伪静态:[我这里用的是LNMP]

server
    {
        listen 80;
        #listen [::]:80;
        server_name laravel.zy62.com;
        index index.html index.htm index.php default.html default.htm default.php;
        root  /home/wwwroot/laravel.zy62.com/public;
 
        include other.conf;
        #error_page   404   /404.html;
        location ~ .*\.(php|php5)?$
        {
            try_files $uri =404;
            fastcgi_pass  unix:/tmp/php-cgi.sock;
            fastcgi_index index.php;
            include fcgi.conf;
        }
 
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
            {
                expires      30d;
            }
 
        location ~ .*\.(js|css)?$
            {
                expires      12h;
            }
if (!-d $request_filename)
            {
                rewrite ^/(.+)/$ /$1 permanent;
            }
 
            # removes trailing "index" from all controllers
            if ($request_uri ~* index/?$)
            {
                rewrite ^/(.*)/index/?$ /$1 permanent;
            }
 
            # unless the request is for a valid file (image, js, css, etc.), send to bootstrap
            if (!-e $request_filename)
            {
                rewrite ^/(.*)$ /index.php?/$1 last;
                break;
            }
        access_log  /home/wwwlogs/laravel.zy62.com.log  access;
    }

include fcgi.conf;

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;
 
fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
 
fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;
 
fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;
 
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;

ERROR: An another FPM instance seems to already listen on /tmp/php-cgi-714ms.com.sock

解决办法:

/root/lnmp reload

数据库配置:\config\database.php

‘mysql‘ => [
            ‘driver‘    => ‘mysql‘,
            ‘host‘      => ‘localhost‘,
            //‘host‘      => env(‘DB_HOST‘, ‘localhost‘),
            ‘database‘  => ‘test‘,
            //‘database‘  => env(‘DB_DATABASE‘, ‘forge‘),
            ‘username‘  => ‘root‘,
            //‘username‘  => env(‘DB_USERNAME‘, ‘forge‘),
            ‘password‘  => ‘qaz123‘,
            //‘password‘  => env(‘DB_PASSWORD‘, ‘‘),
            ‘charset‘   => ‘utf8‘,
            ‘collation‘ => ‘utf8_unicode_ci‘,
            ‘prefix‘    => ‘‘,
            ‘strict‘    => false,
        ],

视图,传值:

路由:

Route::get(‘/hi‘,function(){
    //echo 123;
    return View::make(‘hi‘)->with(‘name‘,‘laravel‘);//way1
});

在laravel\resources\views下新建hi.blade.php文件

<?php
?>
 
<html>
 <head>
  <meta charset="UTF-8" />
  <title>test</title>
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" /> 
   <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>
<link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet">
 </head>
 <body>
  <div> 
  <h1>laravel view</h1>
  <p><?php echo $name; ?></p>
</div>  
 </body>
</html>

视图传值方式:

return View::make(‘hi‘)->with(‘name‘,‘laravel‘);//way1

2.魔术方法

return View::make(‘hi‘)->withName(‘laravel‘);
$data[‘name‘]=‘laravel‘;
return View::make(‘hi‘,$data);

路由传值限制:

那么现在我的博客有一堆文章,我想通过地址 http://yourdomain/article/1 访问 id 为 1 的文章,通过 http://yourdomain/article/2 访问 id 为 2 的文章怎么办?

Route::get(‘article/{id}‘, function($id) {
    return ‘Article:‘ . $id;
});

但是,假如有这样一种情况,有很多地方都需要 id 作为参数,id 大都是这种数字,我们肯定不希望每一个路由规则都要写一次 where 方法来设置 id 的匹配规则。这时候可以通过这样一个方法来实现:

Route::pattern(‘id‘, ‘[0-9]+‘);

资源控制器:

命令行创建:

php artisan make:controller ArticleController

就可以创建一个名为 ArticleController 的资源控制器,文件默认在 app/Http/Controllers 下。我们打开 ArticleController.php,发现里面已经写好了许多方法,比如 index、create、show 等等。分别是什么意思?如何在路由定义才能访问到?

我们如果要在路由里定义一个资源控制器只需要一条:

Route::resource(‘article‘, ‘ArticleController‘);

这个时候,肯定有人会疑惑,那访问的地址规则呢?如果你已经了解了 RESTful,再去阅读以下官方文档,基本就已经明白了。我就着上述的控制器、路由,来说明。先看一张表:

请求方法 请求 URI 对应的控制器方法 代表的意义
GET /article index 索引/列表
GET /article/create create 创建(显示表单)
POST /article store 保存你创建的数据
GET /article/{id} show 显示对应id的内容
GET /article/{id}/edit edit 编辑(显示表单)
PUT/PATCH /article/{id} save 保存你编辑的数据
DELETE /article/{id} destroy 删除

当我访问地址 http://yourdomain/article ,相当于访问控制器 ArticleController 的 index 方法。

当我访问地址 http://yourdomain/article/create ,就会访问到 create 方法。

当我通过 POST 提交数据至地址 http://yourdomain/article,相当于由 store 方法处理。

修改下show方法:

/**
	 * Display the specified resource.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function show($id)
	{
		//
		echo $id;
	}

时间: 2024-10-05 20:49:36

laravel5安装 数据库配置 模板 路由的相关文章

MySQL免安装数据库配置-Windows8.1

1. 解压Mysql压缩包,将包中my-default.ini复制一份,改名为my.ini,添加一下配置信息到my.ini: [client] port=3306 default-character-set=utf8 [mysqld] #skip-grant-tables port=3306 character_set_server=utf8 #解压目录 basedir=D:\Java\mysql5   #解压目录下data目录 datadir=D:\Java\mysql5\data [WinM

CentOS6.4下Mysql数据库的安装与配置

转自:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--CentOS下j2ee环境搭建),如果要开发web项目,我们当然可以安装一个myeclipse到Linux系统上去,这个安装方法和安装eclipse完全相同

Linux下MySQL数据库安装与配置

1. 安装MySQL数据库 先从MySQL官网下载MySQL,然后进入所下载的安装文件所在目录,运行如下命令进行安装,其中MySQL-server-community-5.1.56-1.rhel5.i386.rpm为刚刚下载的MySQL数据库服务器的rpm包,然后使用/etc/rc.d/init.d/mysqlrestart命令重启MySQL服务: [[email protected] ~]# rpm -ivh MySQL-server-community-5.1.56-1.rhel5.i386

Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

原文:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--CentOS下j2ee环境搭建),如果要开发web项目,我们当然可以安装一个myeclipse到Linux系统上去,这个安装方法和安装eclipse完全相同

MySQL数据库安装与配置详解

目录 一.概述 二.MySQL安装 三.安装成功验证 四.NavicatforMySQL下载及使用 一.概述 MySQL版本:5.7.17 下载地址:http://rj.baidu.com/soft/detail/12585.html?ald 客户端工具:NavicatforMySQL 绿色版下载地址:http://www.cr173.com/soft/38153.html  二.MySQL安装 安装条件: 1).net framework4.0(下载地址:http://rj.baidu.com

Linux CentOS6.4下Mysql数据库的安装与配置

一.mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库,咱不得不首先推荐的是mysql数据库了,而且Mysql数据库的第一个版本就是发行在Linux系统上的. MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司.MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内

oracle slient静默安装并配置数据库及仅安装数据库不配置数据库shell

<1,>仅安装数据库软件不配置数据库 ./x86oracle.sh /ruiy/ocr/DBSoftware/app/oracle /ruiy/ocr/DBSoftware/app/oraInventory /ruiy/ins_soft.rsp <2,>静默安装数据库软件并配置数据库 ./x86oracle.sh /ruiy/ocr/DBSoftware/app/oracle /ruiy/ocr/DBSoftware/app/oraInventory /ruiy/ocr/DBDat

CentOS6.4下Mysql数据库的安装与配置,导入数据库,授权远程ip

卸载掉原有mysql 因为mysql数据库在Linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已经安装了mysql数据库 [[email protected] ~]# rpm -qa | grep mysql // 这个命令就会查看该操作系统上是否已经安装了mysql数据库 有的话,我们就通过 rpm -e 命令 或者 rpm -e --nodeps 命令来卸载掉 [[email protected

Linux学习之CentOS--CentOS6.4下Mysql数据库的安装与配置【转】

如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--CentOS下j2ee环境搭建),如果要开发web项目,我们当然可以安装一个myeclipse到Linux系统上去,这个安装方法和安装eclipse完全相同,就没有记录下来了,有了jdk.tomcat.eclipse我们就已经能进行我们的程序开发了,但是如果要做一个项目,哪怕是小的不能再小的项目都离不开数