我想在子域中托管一个laravel项目。首先,我创建一个子域名注册。
在publicm_html / registraion中我上传项目文件。 但是当我在url上看到项目时,我只看到了文件而不是我存储的项目。
上传laravel项目有什么问题? 任何人都可以帮我找到它吗?
答案 0 :(得分:4)
假设您正在使用cPanel创建子域。以下是为laravel-project设置子域所需的一般步骤。
public_html/registration/public/
文件夹,您可以从cPanel see内的子域管理器执行此操作。按照1-3步后,您应该看到您的laravel项目。但是,您还需要在laravel的bootstrap
,storage
文件夹中设置适当的文件权限才能启动并运行。
如果这有助于您,请告诉我们。
答案 1 :(得分:2)
答案 2 :(得分:0)
就我而言,我尝试了每种可用的解决方案。但是当我检查日志时,发现一个错误:
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]
然后我在项目结构中搜索.env文件。(检查隐藏文件列表)。在我的项目中,默认情况下不存在.env,仅存在.env.example文件。
所以我创建了一个.env并添加了
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}"
我已经生成了一个APP_KEY。为此,我使用了
php artisan key:generate --show
然后,我将密钥保存在.env中。然后完成。希望它可以帮助某人
答案 3 :(得分:0)
我认为 Laravel 项目可以安装在域或子域中。
上传你的laravel项目时需要注意的是,确保你的子域目录中没有任何文件(隐藏)。全部删除并上传您的 Laravel 项目文件或 zip