Heroku 403 Запрещено - Laravel 5 - PullRequest
       0

Heroku 403 Запрещено - Laravel 5

5 голосов
/ 12 февраля 2020

У меня есть Laravel 5.8 сайт

https://boss-security-2.herokuapp.com/

Я развернул в Heorku для тестирования с помощью этого скрипта, который я создал

appName='boss-security-2'
echo 'appName =' $appName


# heroku apps
# heroku apps:destroy appName --confirm appName
# ----------------------

echo web: vendor/bin/heroku-php-apache2 public/ > Procfile
git init
git status
git add -A
git commit -m "Initial commit"

heroku create $appName
heroku git:remote -a $appName
heroku buildpacks:set heroku/php
heroku config:set APP_KEY=9O7AegDFJhVC16jLfNNepT7TEQ7FyFZc

git push heroku master

heroku apps:info
heroku open
echo "done"
#

Я продолжал получать

Запрещено

>

У вас нет прав для доступа к этому ресурсу


Что-нибудь неправильно в моем сценарии?


Composer. json

{
    "name": "laravel/laravel",
    "type": "project",
    "description": "The Laravel Framework.",
    "keywords": [
        "framework",
        "laravel"
    ],
    "license": "MIT",
    "require": {
        "php": "^7.1.3",
        "fideloper/proxy": "^4.0",
        "guzzlehttp/guzzle": "~6.0",
        "laravel/framework": "5.8.*",
        "laravel/tinker": "^1.0",
        "laravelcollective/html": "~5.0",
        "nesbot/carbon": "^2.19",
        "pusher/pusher-php-server": "^3.4"
    },
    "require-dev": {
        "beyondcode/laravel-dump-server": "^1.0",
        "filp/whoops": "^2.0",
        "fzaninotto/faker": "^1.4",
        "mockery/mockery": "^1.0",
        "nunomaduro/collision": "^2.0",
        "phpunit/phpunit": "^7.5"
    },
    "config": {
        "optimize-autoloader": true,
        "preferred-install": "dist",
        "sort-packages": true
    },
    "extra": {
        "laravel": {
            "dont-discover": []
        }
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/"
        },
        "classmap": [
            "database/seeds",
            "database/factories"
        ]
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "minimum-stability": "dev",
    "prefer-stable": true,
    "scripts": {
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover --ansi"
        ],
        "post-root-package-install": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "@php artisan key:generate --ansi"
        ],
        "post-install-cmd": [
            "php artisan clear-compiled",
            "chmod -R 777 public/"
        ]
    },

}

Обновление 1

Я проверил журнал, я увидел это

Невозможно обслуживать каталог / app /: не найден соответствующий DirectoryIndex (index. php, index. html, index.htm), а сгенерированный сервером индекс каталога запрещен директивой Options


Обновление 2

Понятия не имею, почему мой composer.json в моем динамометрическом компьютере, похоже, не имеет мой последний код. Я SSHed и проверить.

heroku ps:exec

Это как-то связано с моим composer.lock?

Ответы [ 3 ]

5 голосов
/ 18 февраля 2020

попробуйте это, чтобы решить вашу проблему. добавьте это в ваш composer. json

 "post-install-cmd": [
     "php artisan clear-compiled",
     "chmod -R 777 public/"
 ]
3 голосов
/ 19 февраля 2020

Возможно, вы выдвинули каталоги с неправильными разрешениями в вашем удаленном git хранилище

  1. Перейти к локальному коду
  2. Обновить разрешения
  3. и pu sh вернуть код
  4. взять приложение из приложения Heroku
2 голосов
/ 17 февраля 2020

Я пробовал http://boss-security-2.herokuapp.com/artisan, и он показывает исходный код ремесленника. (Это не должно)

Я думаю, что вы неправильно настроили папку root.

Обновление

Вы сказали, что ваш composer.json не обновляется. Вы пытались зафиксировать и выложить sh все ваши изменения?

git add -A && git commit -m 'update' && git push heroku master

Затем попробуйте S SH и перечислите содержимое

heroku ps:exec
pwd && ls -la && cat Procfile
...