拿laravel5.1来说:
在根目录下创建一个local文件夹,把网站根目录下除了public文件夹以外所有文件及文件夹剪切到local文件夹中
然后把public文件夹下的所有文件剪切到网站根目录,接着删除public文件夹,这样入口就变成根目录而不是public了,接下来
打开根目录下的index.php(之前/public/index.php)
将
require __DIR__.'/../bootstrap/autoload.php';
修改为
require __DIR__.'/local/bootstrap/autoload.php';
将
$app = require_once __DIR__.'/../bootstrap/app.php';
修改为
$app = require_once __DIR__.'/local/bootstrap/app.php';
打开/local/config/app.php(之前的/config/app.php)
将
'key' => env('APP_KEY', 'SomeRandomString'),
'cipher' => 'AES-256-CBC',
改为
'key' => env('APP_KEY', '1234567890qwerty'),
'cipher' => 'AES-128-CBC',
其中key使用长度为16的随机字符串,由于万网不支持'AES-256-CBC'所以用128位加密就可以了,128用16个随机字符串做key,256用32个。
上传到万网虚拟主机,然后在后台把PHP版本改成5.5就可以了,就妥妥的成功运行laravel了。
第一步
解压到htdocs文件夹下并改名为larvael
第二步
访问ip地址/laravel/public 之后你会发现Larvael的主界面
但是细心的同学发现这里总是有一个/public无论再加什么/url他都会存在 很是烦人不能以后项目上线
就给人家一个这样的URL吧
这里作者告诉你如何删去PUBLIC
第三步
只需要laravel/server.PHP
改名为index.php
并且将public目录下的.htaccess拷贝到Larvael根目下
再去访问localhost/Larvael/就会发现不需要加上public这个烦人的东西了
最后请小心如果你的CSS js FONT的文件有用的话 请把他们也拷贝到Larvael的根目录下
否则你会发现你的css js都404啦 千万要记住.
这里作者补充一句 只可在测试环境下这样使用,否则真实环境会有安全问题!
好的今天的blog就写到这里边,一样希望对想删除URL里面public的朋友们有帮助
多谢
下次见~
来自 https://www.cnblogs.com/zhoudawei/p/7155875.html
laravel 5.5 项目部署到虚拟主机
laravel 5.5 项目部署到虚拟主机
-------------------序言
心有猛虎 细嗅蔷薇
第一步
首先要把laravel 项目FTP 上传到虚拟机上
第二步
把根目录下的 server.php 重命名为 index.php
第三步
修改.env文件的数据库配置等
第四步
修改config文件夹下 的 app.php 中的 Encryption Key 下的配置 改为
1
2
因为虚拟机不支持’AES-256-CBC’所以用128位加密,256位加密使用32位字符串,128位使用16位字符串,需要查看错误的话
就把debug打开第五步
我在.env文件改了 好像没起作用 索性就去 config 文件夹下的database.php 文件中修改 数据库地址就是
虚拟机里面数据库的地址 照着数据库填就ok,然后修改项目根目录的.env文件名为.env_bak或者删除.env文件
第六步
由于访问的时候入口文件在public目录下面,这时候访问url会变成url/public/,重写规则跳转就行了,在根目录新建.htaccess文件,写入一下内容
1
2
3
4
5
第七步
到这一步基本就没有什么问题了,但是在使用ajax的时候,post方法有可能会被301跳转然后变成get 所以就需要
打开public目录下的.htaccess文件删除下面这一段:
1
2
3
补充一个问题
config/database.php 里面 因为DMS 数据库版本是 mysql 5.1.73
'charset' => 'utf8', 'collation' => 'utf8_unicode_ci',
在DMS数据库 导入的时候 编码 要是 utf-8 哦 不然 前台页面 乱码