在本文中,我们将带你了解【laravel】问题记录在这篇文章中,我们将为您详细介绍【laravel】问题记录的方方面面,并解答laravel错误日志记录常见的疑惑,同时我们还将给您一些技巧,以帮助您实
在本文中,我们将带你了解【laravel】问题记录在这篇文章中,我们将为您详细介绍【laravel】问题记录的方方面面,并解答laravel错误日志记录常见的疑惑,同时我们还将给您一些技巧,以帮助您实现更有效的idea 【Maven Projects # Profiles】问题记录、laravel+nginx配置好后报错500的一些问题记录,已解决、Laravel_post访问【419】问题解决方法、laravel(一)路由,参数传递,blade laravel怎么读 laravel开发教程 laravel框架下。
本文目录一览:- 【laravel】问题记录(laravel错误日志记录)
- idea 【Maven Projects # Profiles】问题记录
- laravel+nginx配置好后报错500的一些问题记录,已解决
- Laravel_post访问【419】问题解决方法
- laravel(一)路由,参数传递,blade laravel怎么读 laravel开发教程 laravel框架下
【laravel】问题记录(laravel错误日志记录)
问题
composer下载laravel-admin的时候
- 参考官方文档 使用composer install 下载
- 出现了一堆冲突的问题, --ignore-platform-req=ext-fileinfo 暂时忽略这些冲突
然而,在下载好laravel-admin后
出现了如下的问题
No publishable resources for tag [laravel-assets].
Publishing complete.
一直运行不了命令行
PHP artisan vendor:publish --provider="Encore\Admin\AdminServiceProvider"
config下的admin.PHP的文件也无法生成 卡住了许久
idea 【Maven Projects # Profiles】问题记录
今天启动接一个新项目,然后项目启动后发现启动的环境和预想的不一致,查看 pom 文件确认自己是 dev 无误之后,但是启动的就是 test 环境。
问题
发现了启动环境不对不对之后,自己试了一种解决办法,就是在添加运行命令 -Dspring.profiles.active 指定需要运行的环境。但是没有弄清楚原因还是觉得难受。 于是开始排查问题,发现了 Maven Projects 的 Tool Window 下有一个从来没有注意到的选项:Profiles,想肯定是pom 文件中对应的配置。
解决方法
发现有些配置是 项目 pom 中配置的,有些是 maven settings.xml 文件中的配置。于是开始探索,发现有些勾选还会变成灰色,有些是亮色,不清楚到底是什么意思呢。各种尝试之后,发现只有仅选择了 dev 之后,启动才会成功。
问题虽然解决了,但是不清楚为什么选择多个就不行呢。
于是就去网上搜索,发现都没有关于这个 tool bar 的解释,只能去看寻找 官方 HELP了。
官方解释
Working with Maven profiles 这个链接解释了这个 tool bar 的作用,当然还有一些关于 idea 如何使用的指导,之前都没有看过,还是有很多帮助了,建议不清楚的可以去看看。这里只简单介绍 Maven Projects | Profiles 的说明就只说这个吧。
-
显示范围
简单解释一下就是,这里展示3个范围内的Profiles
- maven 配置文件1,仅使用此文件的项目有效,在 %\USER_HOME%/.m2/settings.xml
- 全局 maven 配置,${maven.home}/conf/settings.xml.
- 本项目中 pom 文件中配置的环境
-
激活环境配置 官方文档中显示当我们导入文件的时候,会有选择环境的提示,不知道是不是没有注意还是版本的问题,没有看到。总之在这个 tool bar 中可以通过两种方式去指定 想要激活的环境
- 1、Execute Maven goal :点击带有m的图表会出现选项,可以在那里 通过 -P profileName 指定激活环境
- 2、通过选择profiles list中的 复选框选择
第一种方式是运行maven命令时指定环境的方式,同时可以验证我在上面说的,通过启动时手动添加命令的方式也是可以指定配置文件的。第二种方式比较便捷,只是不了解这个选项的话是不清楚意思的。
继续阅读发现,灰显的勾选是 默认 激活的环境。但是它会被手动激活的方式覆盖。
发现的问题
另外文档中国还有两个问题没有说明,即:
- 1、多个环境被激活的情况下,使用哪一个环境呢?
- 2、如何恢复默认的配置情况,目前好像没有找到方法。
第一个问题在实践和网友的方案中得知,是使用最后一个勾选的环境!!!
另外,再记录一个提醒: 在多模块项目中,parent 的 dependencies 下的所有依赖会被子项目继承,如果不想这么做,可以使用 <dependencyManagement>标签,他可以被子项目引用,但是不会默认加载,只有显示的引用才会加载此依赖,而且默认不添加版本会继承parent的版本,但是也可以手动覆盖parent中的版本。
laravel+nginx配置好后报错500的一些问题记录,已解决
一、检查ngxin配置,以下是我的nginx配置
这里粘贴下源码供大家参考:
user www www;
worker_processes 4;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main ''$remote_addr - $remote_user [$time_local] "$request" ''
''$status $body_bytes_sent "$http_referer" ''
''"$http_user_agent" "$http_x_forwarded_for"'';
sendfile on;
keepalive_timeout 65;
upstream web {
server unix:/run/php-fpm/www.sock weight=100 max_fails=10 fail_timeout=30;
}
server {
listen 80;
server_name 31.297.228.158;
root /var/www/buxingjie/public/;
index index.php index.html index.htm;
access_log /var/log/nginx/access.log main;
error_log /var/log/nginx/error.log debug;
location ~ \.php$ {
fastcgi_pass web;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include fastcgi_params;
include fastcgi.conf;
}
location / {
try_files $uri $uri/ /index.php?$query_string;
}
#if (!-d $request_filename)
#{
# rewrite ^/(.+)/$ /$1 permanent;
#}
# 去除index action
#if ($request_uri ~* index/?$)
#{
# rewrite ^/(.*)/index/?$ /$1 permanent;
#}
# 根据laravel规则进行url重写
#if (!-e $request_filename)
#{
# rewrite ^/(.*)$ /index.php?/$1 last;
# break;
#}
#error_page 500 502 503 504 /50x.html;
#location = /50x.html {
# root html;
#}
}
}
二、我们看下fastcgi.conf和fastcgi_params文件,fastcgi.conf文件底部增加一行
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/:/var/www/buxingjie/";
三、对项目根目录下两个文件夹赋权storage和bootstrap/cache
chmod -R 777 storage
四、检查laravel需要的PHP拓展是否都已经安装
检查是否已经安装:
php -m | grep ''json''
也可以在项目根目录下index.php文件中输出phpinfo()进行查看
假如nginx配置没问题,index.php文件中写入exit(''cs'');应该会在浏览器上显示出cs;
五、告诫一下大家的话
ngxin+laravel已经配置好,浏览器访问报错500,搞了一下午一直没有解决,搜索各种方式,没有任何提示,PHP报错也开了,nginx报错也查了
后来放弃了,开始研究源码,跟着index.php里面内容一步步看源码($request = Illuminate\Http\Request::capture()从这里开始,主要是这里没继续执行),打印断点测试,然后发现是json拓展没有安装,php.ini里面没有配置
安装拓展(如何安装PHP拓展参考这个链接),配置php.ini,就解决了问题,所以有时候没思路时,可以跟着代码一步步走一走,或许会更好。
Laravel_post访问【419】问题解决方法
目录
命名空间
编写【handle】函数
修改【app\Http\Middleware\VerifyCsrftoken.PHP】文件
由于【post】访问会经过【Csrf】验证,故而会报错【419】,所以需要此步操作。
命名空间
use Closure;
编写【handle】函数
public function handle($request, Closure $next)
{
if($request->method() == 'POST')
{ return $next($request); }
if ($request->method() == 'GET' || $this->tokensMatch($request))
{ return $next($request); }
}
再次访问接口测试成功。
laravel(一)路由,参数传递,blade laravel怎么读 laravel开发教程 laravel框架下
- 每次访问
laravel都会引导到routes.php文件 - 通常会把某个路由交给某个控制器的方法去处理
controller
1.创建controller
`php artisan make:controller controllername`
注:`php artisan make:controller controllername –plain`不携带自定义方法
2.使用controller
Routes: Route::get(''/'',''SitesController@index'');
SC:
<span>public</span><span><span>function</span><span>index</span><span>()</span> {</span><span>return</span><span>"sjming"</span>; }
3.参数传递
(1)单值:
SC:
<span>public</span><span><span>function</span><span>index</span><span>()</span> {</span><span>$name</span> = <span>''sjming''</span>; <span>return</span> view(<span>''welcome''</span>)->with(<span>''name''</span>,<span>$name</span>); }
(2)数组
<span>return</span> view<span><span>(<span>''welcome''</span>)</span>-></span><span>with</span>([ <span>''name''</span><span>=></span>$name, <span>''first''</span><span>=></span><span>''su''</span> ]);
(3)作为view的参数
<span>$data</span>=[]; <span>$data</span>[<span>''first''</span>]=<span>''123''</span>; <span>$data</span>[<span>''second''</span>]=<span>''456''</span>; <span>return</span> view(<span>''sites.about''</span>,<span>$data</span>);
(4)php的compact
<span>$fir</span>=<span>''123''</span>; <span>$sec</span>=<span>''456''</span>; <span>return</span> view(<span>''sites.about''</span>,compact(<span>''fir''</span>,<span>''sec''</span>));
4.参数使用
转义方式:{{}} //其中的html不解释
不转义方式:{!! !!} //其中的html解释
blade模板
- @yield(‘xxx’),@extends(‘xxx’)
- @section(‘xxx’),@stop
以上就介绍了laravel(一)路由,参数传递,blade,包括了laravel,blade方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
今天关于【laravel】问题记录和laravel错误日志记录的介绍到此结束,谢谢您的阅读,有关idea 【Maven Projects # Profiles】问题记录、laravel+nginx配置好后报错500的一些问题记录,已解决、Laravel_post访问【419】问题解决方法、laravel(一)路由,参数传递,blade laravel怎么读 laravel开发教程 laravel框架下等更多相关知识的信息可以在本站进行查询。
本文标签: