zoukankan      html  css  js  c++  java
  • Laravel 部署安装到虚拟主机的方法(折腾了一周,终于成功部署,原来是虚拟机不加载.env,谢谢莫回首http://lxl520.com/index.php/archives/88/!)

     
    作者:莫回首
    链接:https://www.zhihu.com/question/35497879/answer/111241182
    来源:知乎
    著作权归作者所有,转载请联系作者获得授权。

    laravel版本:5.2
    虚拟主机:万网

    迁移

    1.先把所有文件复制到网站根目录
    2.由于访问的时候入口文件在public目录下面,这时候访问url会变成url/public/,重写规则跳转就行了,在根目录新建.hatcess文件

    <IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteCond %{REQUEST_URI} !^public
        RewriteRule ^(.*)$ public/$1 [L]
    </IfModule>
    

    3.打开config/app.php

    'key' => env('APP_KEY', '...'), //32位字符串
    'cipher' => 'AES-256-CBC',
    

    改为

    'key' => env('APP_KEY', '...'),//16位字符串
    'cipher' => 'AES-128-CBC',
    

    由于万网不支持'AES-256-CBC'所以用128位加密,256位加密使用32位字符串,128位使用16位字符串
    4.到这一步基本就没有什么问题了,但是在使用ajax的时候,post方法有可能会被301跳转然后变成get
    解决方案:
    打开public目录下的.htaccess文件删除下面这一段

      # Redirect Trailing Slashes If Not A Folder...
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)/$ /$1 [L,R=301]
    

    5.好了,我的使用过程中就没什么问题了

    (注:把在控制台把万网的php版本调到最高,现在是5.5)

    补充一点很多人容易忽略的,配置文件不要写在.env文件里面,虚拟机一般不支持,换到config目录下的相应配置文件下

  • 相关阅读:
    [置顶] 怎么对待重复的代码
    AIX和Linux中wtmp的不同处理方式
    Visio 下载,及密钥
    全局变量和局部变量
    UNIX网络编程--IPV4 IPV6 ICMPV4 ICMPV6
    Android XML文档解析(一)——SAX解析
    rnqoj-30- [stupid]愚蠢的矿工-树形DP
    linux 文件内容的复制
    主流视音频平台参数
    FTP原理
  • 原文地址:https://www.cnblogs.com/caicaizi/p/6002743.html
Copyright © 2011-2022 走看看