目前,较为成熟的技术是采用laravelS组件,注意和laravel 区别laravelS多了一个大写的S,由于laravelS默认监听5200端口,所以laravel项目要做一些调整

例如:

  • 静态文件引入的方式-----从静态资源服务器加载
我们熟悉的js和css引入方式还是通过相对路径引入到标签中,但是如果集成了laravelS组件,这种技术方案就行不通了,网页不会加载样式或js文件,所以我们最好采用从静态服务器加载相关文件的方法。文件laravel5.8官方手册给出了URL::asset()方法引入,但是例子都过于简单,如果我们静态文件的目录发生改变,则官方文档中的案例就不再奏效

不过放心,虽然“从静态资源服务器加载“听起来要写一些代码实现跨域加载似的,但实践起来并没那么麻烦

  • 项目结构

  • ngixn 分站点设置
server {listen       88;server_name yinti.com;root  /dingshub2/yinti/public;index index.html index.htm index.php;location / {# WordPress固定链接URL重写     #这段显得尤为重要---如果没有,laravel路由方式访问会提示404
        try_files $uri $uri/ /index.php?$query_string;if (!-e $request_filename) {rewrite (.*) /index.php;}}# PHP配置location ~ \.php$ {fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;include        fastcgi_params;}#静态文件服务器的实现location ~ .*\.(gif|jpg|jpeg|png|js|css)$ {

expires 24h;
root /dingshub2/yinti/public/static;
proxy_store on;
proxy_store_access user:rw group:rw all:rw;
proxy_temp_path /dingshub2/yinti/public/static;#静态文件访问路径,比起域名下的根路径多了一层/static,没错,遇到诸如.css结尾的请求,会到这个路径下搜寻
proxy_redirect off;
proxy_set_header Host 127.0.0.1;
client_max_body_size 10m;
client_body_buffer_size 1280k;
proxy_connect_timeout 900;
proxy_send_timeout 900;
proxy_read_timeout 900;
proxy_buffer_size 40k;
proxy_buffers 40 320k;
proxy_busy_buffers_size 640k;
proxy_temp_file_write_size 640k;
if ( !-e $request_filename)
{
  proxy_pass http://127.0.0.1;#默认80端口
}

    }
}

  • blade模版文件中的引入
官方文档没有给i出详细交代,不过我们可以利用一些laravel的配置功能达到我们的目的,实现静态文件引入的“动态”化,以应对静态文件路径发生改变的业务场景;例如我们知道laravel在config文件夹下定义了若干php文件,每个php文件中都返回了一个关联数组,每个数组的键都对应了一个配置方案,例如,我们可以在config下定义一个名为(名称随意)staticfiles.php文件,内容如下:

#staticfiles.php

<?php
return ['_css_'=>'http://yinti.com:88/mycss','_bstr_'=>'http://yinti.com:88/booststrap4/css','_pic_'=>'http://yinti.com:88/mypic'
];

或者,我们可以在.env文件中定义添加

MYCSS="http://yinti.com:88/mycss"
MYPIC="http://yinti.com:88/mypic"

blade文件中这样引入:

母版文件(局部)
<!doctype html>
<html lang="en">
<head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><meta name="description" content=""><meta name="author" content=""><link rel="icon" href="../../../../favicon.ico">@section('title')<title>Sticky Footer Navbar Template for Bootstrap</title>@show<!-- Bootstrap core CSS -->
#从config文件夹下的staticfiles.php文件中加载
 <link href="{{asset(config('mystatic._bstr_').'/bootstrap.min.css')}}" rel="stylesheet"> 
#从.env文件中加载
<!-- Custom styles for this template --> 

 <link href="{{asset(env('MYCSS')).'/sticky-footer-navbar.css'}}" rel="stylesheet"> ........................剩余部分略去不表

模板继承文件

@extends('masterpage.login')
@section('title')<title>搏击运动员之家</title>
@endsection@section('h1')<h1 class="mt-5">搏击帅哥魏锐</h1>
@endsection
@section('plead')<p class="lead">2009年,魏锐考入湖南吉首大学,并因此成为河南周口市鹿邑县的第一名运动员大学生。 <code>padding-top: 60px;</code> on the <code>body &gt; .container</code>.</p><p>Back to <a href="../sticky-footer">生活中的魏锐,静若处子,动若脱兔;有如李连杰年轻时的俊郎外表和气质,表情文静,态度温和;赛场上的他,则如猛虎下山,身形灵动,一次次为梦想而“KO”</a> minus the navbar.</p><p>
#从.env文件中加载 
<img width="60%" src="{{asset(env('MYPIC').'/9aa88827.jpg')}}"></p>
@endsection

  • 路由定义
Route::get('wr',function(){return view('sample.wr');
});

  • 效果

转载于:https://www.cnblogs.com/saintdingspage/p/11267518.html

在laravel5.8中集成swoole组件----用协程实现的服务端和客户端(二)---静态文件如何部署...相关推荐

  1. 在laravel5.8中集成swoole组件----用协程实现的服务端和客户端(一)

    注意,这种风格的服务端需要swoole4.4以上,这种风格的服务端需要swoole4.4以上,这种风格的服务端需要swoole4.4以上,重要的事情说三遍!!! 服务端 <?php //name ...

  2. 在laravel5.8中集成swoole组件----用协程实现的服务端和客户端(nginx配置篇章)

    laravel项目中的配置  原文出处:https://laravelacademy.org/post/19700.html,感谢原文作者让laravel这款可爱的php框架,进入了高并发的殿堂 如果 ...

  3. 在laravel5.8中集成swoole组件----初步测试

    铺垫 前提是先安装swoole组件,我采用从pecl-----php扩展组件网下载swoole扩展包,然后切入到解压缩的扩展包中运行phpize命令, phpize是一种编译命令,可以在安装文件中生成 ...

  4. DSAPI多功能组件编程应用-HTTP监听服务端与客户端

    本文中,演示了使用DSAPI.网络相关.HTTP监听,快速建立服务端和客户端. HTTP监听服务端的作用,是监听指定计算机端口,以实现与IIS相同的解析服务,提供客户端的网页请求,当然,这不仅仅是应用 ...

  5. Java中Socket通信-服务端和客户端双向传输字符串实现

    场景 什么是socket 在计算机通信领域,socket 被翻译为"套接字",它是计算机之间进行通信的一种约定或一种方式.通过 socket 这种约定,一台计算机可以接收其他计算机 ...

  6. 服务器响应回调函数,解决有关flask-socketio中服务端和客户端回调函数callback参数的问题(全网最全)...

    由于工作当中需要用的flask_socketio,所以自己学习了一下如何使用,查阅了有关文档,当看到回调函数callback的时候,发现文档里都描述的不太清楚,最后终于琢磨出来了,分享给有需要的朋友 ...

  7. IMI 基于 Swoole 开发的协程 PHP 开发框架 常驻内存、协程异步非阻塞

    介绍 IMI 是基于 Swoole 开发的协程 PHP 开发框架,拥有常驻内存.协程异步非阻塞IO等优点. IMI 框架文档丰富,上手容易,致力于让开发者跟使用传统 MVC 框架一样顺手. IMI 框 ...

  8. 【★更新★】高性能 Windows Socket 服务端与客户端组件(HP-Socket v2.0.1 源代码及测试用例下载)...

    HP-Socket 以前为某大型通信项目开发了一套通用 Windows Socket TCP 底层通信组件,组件代号为 HP-Socket.现在把 HP-Socket 的所有代码向大众公开,希望能对大 ...

  9. php启用 asynchdns,在 PHP 中使用 Promise + co/yield 协程

    摘要: 我们知道 JavaScript 自从有了 Generator 之后,就有了各种基于 Generator 封装的协程.其中 hprose 中封装的 Promise 和协程库实现了跟 ES2016 ...

最新文章

  1. 高通创投在中国区的投资重点,目前主要聚焦在AI+5G、XR+5G、机器人/自动驾驶+5G、物联网+5G四个方面。
  2. Spring boot的Bean使用JSR 303校验
  3. 使用tensorflow训练数据时遇到的问题总结
  4. 【SICP练习】144 练习3.82
  5. 角色操作-角色添加代码实现
  6. QUIC - 低时延互联网传输层协议
  7. 2012 Multi-University Training Contest 2
  8. 【工大SCIRLab】EMNLP 2019 跨语言机器阅读理解
  9. Verizon:2013年数据破坏调查报告(DBIR)【更新版】
  10. NHibernate 基础教程
  11. 知道对方IP,你该这样入侵(附:如何隐藏IP地址)
  12. bom成本分析模型_BOM成本核算实例
  13. 中国大学生学习与发展追踪研究(2007年至今)与中国综合社会调查(2003-2017年)与中国社会状况综合调查(2006-2019年)
  14. wifi服务器延迟高,网络延迟高怎么办(家里WIFI延迟高,教你几招搞定网络延迟)...
  15. IOS调起H5中文参数乱码问题(不是简单编码)
  16. linux上安装python、igraph源码包_linux ubuntu 安装/卸载/删除python-igraph方法
  17. JS实现动画特效2(缓动函数封装、导航栏筋斗云效果)
  18. mini-MBA学习总结四:高效沟通
  19. 整车nvh培训入门 仿真 ,基于Hyperworks 掌握思路 细节
  20. ncnn opencv VS2017 window10 yolov5调用摄像头实时目标检测

热门文章

  1. 你知道“拉黑”、“关注”、“点赞”、“转发”、“分享到朋友圈”等英语咋说吗?
  2. 库-libuv:概述
  3. [oralce] 利用CRT的端口转发功能直接用plsql访问数据库
  4. oracle存储过程写法(一)
  5. 判断一个无符号整数是不是2的幂
  6. frameworks/av/media/CedarX-Projects/CedarAndroidLib/LIB_KK44_/Android.mk: No such file or directory
  7. 前端学习(3340):ant design中icon图标的使用
  8. 前端学习(2946):vue-cli使用
  9. [html] table中给td设置宽度无效怎么解决?
  10. [html] 如果列表元素li的兄弟元素为div,会产生什么情况?