我想在子域中托管一个laravel项目。首先,我创建一个子域名注册。
在public_html / registration里面我上传了项目文件。 qazxsw poop但是当我在url上看到项目时,我只看到了文件而不是我存储的项目。
上传laravel项目有什么问题?任何人都可以帮我找到它吗?
假设您正在使用cPanel创建子域。以下是为laravel-project设置子域所需的一般步骤。
public_html/registration/public/
内的子域管理器执行此操作。完成1-3步后,您应该看到您的laravel项目。但是,您还需要在laravel的see,bootstrap
文件夹上设置适当的文件权限才能启动并运行。
如果这有助于您,请告诉我们。
像@Samundra所说的那样做。如果您有困惑,这是您需要将storage
放入cPanel - > Sub-Domain的地方
public_html/registration/public
在我的情况下,我尝试了每一个解决方案。但是当我检查日志时发现了一个错误:
然后我在我的项目结构中搜索.env文件。(检查隐藏文件列表)。在我的项目中.env默认情况下不存在.env.example文件就在那里。
所以我创建了一个.env并添加了
production.ERROR: No application encryption key has been specified. {"exception":"[object] (RuntimeException(code: 0): No application encryption key has been specified. at /home/******/public_html/**subdomain name*/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php:44)
[stacktrace]
我生成了一个APP_KEY。为此我用过
APP_NAME=Laravel
APP_ENV=local
APP_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
APP_DEBUG=true
APP_URL=http://localhost
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=xxxxxxxxxxxxxxxxxxx
DB_USERNAME=xxxxxxxxxxxxxxxxxxx
DB_PASSWORD=xxxxxxxxxxxxxxxxxxx
BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
然后我将密钥保存在.env中。然后它完成了。希望它可以帮助某人