标签: lumen

Laravel和Lumen的Apache别名

我正在尝试在我的服务器上创建别名,该别名将所有流量引导到example.com/z/与其余目录不同的其他目录example.com,其中example.com有Laravel 4.2安装并且example.com/z/具有运行服务的流明安装.

这是我原来的vhost:

<VirtualHost *:80>
 ServerName example.com
 DocumentRoot /data/user/public_html/public
 <Directory /data/user/public_html/public>
  Options +FollowSymlinks
  AllowOverride All
 </Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

这是/z/添加了别名的vhost :

 <VirtualHost *:80>
  ServerName example.com
  DocumentRoot /data/user/public_html/public
  Alias /z/ /data/user/service/public
  <Directory /data/user/service/public>
   Options +FollowSymlinks
   AllowOverride All
  </Directory>
  <Directory /data/user/public_html/public>
   Options +FollowSymlinks
   AllowOverride All
  </Directory>
 </VirtualHost>
Run Code Online (Sandbox Code Playgroud)

当导航到exmaple.com/z/我得到403页并在日志中出现此错误:

 Directory index forbidden by Options directive: /data/user/service/public
Run Code Online (Sandbox Code Playgroud)

如果我去其他任何地方/z/(例如/z/abcd:),我会得到一个404页面,但它看起来像Laravel 404页面而不是Lumen 404页面.

关于如何让这个工作的任何想法?

php apache laravel lumen

20
推荐指数
1
解决办法
4828
查看次数

Laravel 5/Lumen请求标题?

所以我不确定如何解决这个问题我已经尝试了一些事情,我将在下面列出一个但是我想要做的是在PHP变量中的http请求中发送的存储信息.

这是Chrome Postman发送我想要发送的请求的视图.注意"pubapi"是一个"标题".

PostMan查看

我一直在搞乱Lumen请求,你可以在这里看到记录(http://lumen.laravel.com/docs/requests)并尝试使用下面的内容来显示它们,但它显然不起作用.

echo Request::all();
Run Code Online (Sandbox Code Playgroud)

我把它放在我的控制器中,我有......

use Illuminate\Http\Request;
Run Code Online (Sandbox Code Playgroud)

在我的控制器中.

那么我怎么能说我存储标题我将"pubapi"发送到我的控制器中的php变量?

编辑

不确定这是否有帮助,但是看看Laravel框架文档,我看到这个http://laravel.com/api/5.0/Illuminate/Http/Request.html#method_header尝试这个在我的代码中引发了同样的错误.所以例如我尝试了以下并达到了同样的错误.

echo Request::header('pubapi');
Run Code Online (Sandbox Code Playgroud)

php rest laravel lumen

20
推荐指数
3
解决办法
5万
查看次数

基于令牌的身份验证中的会话

我正在PHP Lumen中构建一个应用程序,它在登录时返回一个令牌.我不知道如何超越这个.

我该如何使用这些令牌维护会话?

具体来说,如果我使用reactjs或vanilla HTML/CSS/jQuery,如何在我为Web应用程序的安全部分发出的每个请求中发送它们,如何在客户端存储令牌?

php jquery authorization reactjs lumen

20
推荐指数
2
解决办法
6497
查看次数

安装后未在Lumen中找到页面

我刚安装Lumen但是当我前往其公共目录时localhost/lumen/public,

抱歉,找不到您要查找的页面.

会出现.

我检查app\Http\routes.php并改变了

$app->get('/', function () use ($app) {
Run Code Online (Sandbox Code Playgroud)

$app->get('/lumen/public/', function () use ($app) {
Run Code Online (Sandbox Code Playgroud)

它奏效了.

但这不是我想要的.在Laravel中,'/'作品非常完美.我怎样才能让Lumen合作'/'


BTW当我使用时php artisan serv,'/'只能在工匠服务中工作:(

php routes laravel lumen

19
推荐指数
1
解决办法
9020
查看次数

为什么从Lumen 5.2中删除了工匠服务命令?

请.有谁知道为什么Lumen的团队取消了命令php artisan serve?那个命令非常有帮助.

artisan lumen lumen-5.2

19
推荐指数
4
解决办法
3万
查看次数

Lumen/Laravel 6:调用未定义的函数 array_except()

所以我的 Mailable 视图抛出了这个错误——这就是我手头上的一切。当我使用 Lumen 5.8 时它运行良好,所以我猜测它是在升级到 Laravel 6 之后发生的。

调用未定义的函数array_except()(查看:/kunden/182801_60322/tu/uat/api/resources/views/mail/invite-employee.blade.php)

我的刀片文件如下所示:

@extends('mail.master')

@section('content')
<tr>
    <td align="left" style="border: 1px solid #dddee5; border-bottom: 2px solid #cecfd9; padding; 20px;">
        <div class="padded">
            <p>
            {!! nl2br(e($data->message)) !!}
            </p>
        </div>
    </td>
<tr>
<tr>
    <td align="left" bgcolor="#eaeaf2" class="padded">
        <p style="margin-bottom: 5px;" class="cta-label">{{ $data->copy->click }}</p>
        <div class="cta-link">
            <a style="color: #337BE9;" class="cta-link--a" href="{{ $data->appUrl }}/{{ $data->route }}/{{ $data->verificationCode }}">{{ $data->appUrl }}/{{ $data->route }}/{{ $data->verificationCode }}</a>
        </div>
        <p style="font-size: 12px; margin-top: 10px;">{{ $data->copy->mistake }}</p>
    </td>
</tr>
@endsection
Run Code Online (Sandbox Code Playgroud)

显然代码的任何部分都没有试图调用该函数。

我的 composer.json …

php laravel lumen laravel-blade laravel-6

19
推荐指数
2
解决办法
2万
查看次数

按模式/通配符删除缓存键

我正在使用Lumen构建REST API,并希望使用Redis缓存一些路由.例如我使用的route/users/123/items:

$items = Cache::remember('users:123:items', 60, function () {
  // Get data from database and return
});
Run Code Online (Sandbox Code Playgroud)

当对用户的项目进行更改时,我清除缓存:

Cache::forget('users:123:items');
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.但是,我还需要清除我为routes/users/123和/ users/123/categories实现的缓存,因为那些包括项目列表.这意味着我还必须运行:

Cache::forget('users:123');
Cache::forget('users:123:categories');
Run Code Online (Sandbox Code Playgroud)

在将来,可能会有更多的缓存需要清除,这就是我正在寻找模式/通配符的原因,例如:

Cache::forget('users:123*');
Run Code Online (Sandbox Code Playgroud)

有没有办法在Lumen/Laravel中容纳这种行为?

laravel lumen

16
推荐指数
1
解决办法
6310
查看次数

流明无法预测的输出

最近,我安装了lumen(5.0.4)mfw并在默认配置中遇到了页面加载问题.我有不可预知的页面加载过程的行为.

有时它加载好,但有时而不是加载我得到一个零大小的未命名文件的下载对话框或它抛出一个异常像

NotFoundHttpException in Application.php line 1109:
Run Code Online (Sandbox Code Playgroud)

(首先,我想说其他非流明/ laravel网站工作正常)服务器配置:

  • Apache 2.4.12
  • PHP 5.6.7-1
  • Zend Engine v2.6.0与Zend OPcache v7.0.4-dev

我认为问题在于php完成,php-fpm因为fcgi配置似乎运行良好.

和Lumen一起尝试过NotFoundHttpException,但这对我没有帮助.

php laravel lumen

15
推荐指数
1
解决办法
681
查看次数

Bcrypt在Lumen工作5.4:调用未定义的函数bcrypt()

我创建了一个新的Lumen 5.4项目并尝试播种一些数据.在播种机中,我使用bcrypt来哈希密码.但是当我跑步时php artisan db:seed,我收到了这个错误:

Call to undefined function bcrypt()
Run Code Online (Sandbox Code Playgroud)

为什么我不能在流明中使用bcrypt?我之前在Laravel中使用过它.

php lumen

15
推荐指数
3
解决办法
1万
查看次数

访问令牌:撤销与删除

我正在创建一个路由/user/logout使用dusterio/lumen-passport和在控制器操作中我手动撤销令牌,导致用户被注销.

我有两个注销用户的选项.撤消令牌(将令牌保留在数据库中 - 只需设置一个标志,告知令牌无用)并删除令牌.

我的问题很简单:

管理令牌的最佳方法是什么?我应该通过删除或撤销来退出吗?

将来,我将使用redis存储令牌,所以我想我应该删除令牌,因为在redis服务器中保留过期数据是没有意义的.

security oauth-2.0 laravel lumen laravel-passport

15
推荐指数
1
解决办法
1727
查看次数