laravel - 从 Laravel 子域中托管的 url 中删除公共
问题描述
我在子域中托管了我的 Laravel 站点,它的 url 是这样的:
现在我想从 url 中删除 public,我的 .htaccess 文件是这样的:
<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}/beta [L,R=301]
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
解决方案
将所有文件从/public
您的根文件夹/
(主要是您的 laravel 文件夹)中移动。
现在打开index.php
文件并编辑 2 行,如下所示:
require __DIR__.'/../vendor/autoload.php';
// changed to
require __DIR__.'/vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';
// changed to
$app = require_once __DIR__.'/bootstrap/app.php';
现在将此行添加到您的.htaccess
以防止.env
从 URL 访问:
<Files .env>
order allow,deny
Deny from all
</Files>
通过这种方法,您也可以在任何类型的共享主机中托管您的 laravel 应用程序。
希望这可以帮助
推荐阅读
- c# - 检查器中的字符串数组在其他变量的背景中,为什么?
- image-processing - 图像上的 3D 点重投影
- github - GitHub - 在有待处理邀请时更改了用户名 - 对邀请有任何影响吗?
- python - 如何在python中将双引号返回到\"?
- amazon-dynamodb - 实际如何计算写/读容量单位?
- azure-data-factory - 如何使用映射数据流来展平数据湖中 JSON 字符串列的层次结构
- javascript - JS 合并排序,按选择的对象值排序
- reactjs - 为什么在尝试模拟 ES6 模块中的一个函数时会绕过 Jest 模拟?
- vue.js - 添加路由器视图的问题
- python - 视觉工作室代码 - python - tkinter