我有一个子域名http://206.217.128.227/~obts/。我在这个子域上托管了我的laravel项目。该域名的cpanel structer是
当我点击任何href属性时,网址为http://206.217.128.227/something 但后来我有404错误。但是,如果我手动给出网址http://206.217.128.227/~obts/something,那么我会得到正确的页面。 我已将公共文件夹的内容粘贴到public_html文件夹中。和laravel文件夹上项目的所有其他内容。 我将index.php文件修改为
require __DIR__.'/../laravel/bootstrap/autoload.php';
$app = require_once __DIR__.'/../laravel/bootstrap/app.php';
我手动添加了paths.php文件并修改了公共'财产
'public' => __DIR__.'/../public_html',
我的.env文件是
APP_ENV=local
APP_DEBUG=true
APP_KEY=something
APP_URL=http://206.217.128.227/
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=obts_data
DB_USERNAME=obts_admin
DB_PASSWORD=password
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
我现在做错了什么?
答案 0 :(得分:1)
我在评论中已经回答了这个问题。这篇小文将总结被问及的错误。
问题: OP报告他设置了一个新的L5.2项目,其“views”文件夹位于他的L5.2项目结构之外(如下图所示)。他修改了index.php
文件以包含此new view path
。但是,http://206.217.128.227/something
类型的网址无效,而http://206.217.128.227/~obts/something
类型的网址工作正常。
答案:此处的问题是,他生成的网址在路径中不包含~obts
,因此L5.2报告错误。很容易解决。
但是,我想在此提出一些建议:
public_html
文件包含index.php
文件夹的方式不推荐。更新L5.2时会发生什么。有可能会覆盖这些文件。正确的方法是编辑larave/config/view.php
文件并更改paths
数组。~obts
包含不安全的字符~
。有关哪些字符是安全的,请参阅此article。