403 Запрещено при загрузке изображений из общедоступной папки / папки с изображениями laravle vuejs xampp - PullRequest
0 голосов
/ 06 ноября 2019

В моем профиле изображение отображается отлично, но я получаю сообщение об ошибке ниже в консоли. если я пытаюсь получить доступ к изображению из общей папки, оно не показывает мне ошибку, но если я пытаюсь получить к нему доступ из папки с изображениями, которая является подпапкой, она показывает мне ошибку. Любой может помочь мне с этой проблемой, так как 4 дня я ищурешение, но я не нашел никакого решения, пока это будет так любезно с его стороны.

Доступ запрещен! У вас нет прав доступа к запрошенному каталогу. Индексный документ либо отсутствует, либо каталог защищен от чтения.

Если вы считаете, что это ошибка сервера, обратитесь к веб-мастеру.

Ошибка 403 admin-cms.me Apache / 2.4.39 (Win64) OpenSSL / 1.0.2s PHP / 7.1.31

Мой код API:

Route::get('profile','API\UserController@profile');

Мой код контроллераэто:

 public function profile()
    {
        //
        return auth('api')->user();
    }

Мои данные и методы Код:

  data() {
    return {
      users: {},
      form: new Form({
        id: "",
        name: "",
        email: "",
        password: "",
        type: "",
        bio: "",
        photo: ""
      })
    };
  },

methods: {
    getProfilePhoto() {
      return "image/" + this.form.photo;
    }

Мой HTML-код в profile.vue:

<div class="widget-user-image">
            <img class="img-circle" :src="getProfilePhoto()" alt="User Avatar" />
          </div>

Ответы [ 2 ]

1 голос
/ 06 ноября 2019

Вы уверены, что this.form.photo имеет значение во время вызова getProfilePhoto()?

Сообщение об ошибке:

Нет индексного документа или каталогазащищен от чтения

Заставляет меня думать, что getProfilePhoto() возвращает 'image/' + '', что приводит к попытке индексации каталога изображений.

Один из вариантов - показать только профильфотография, если this.form.photo имеет значение, используя v-if:

<div class="widget-user-image">
    <img class="img-circle" v-if="form.photo" :src="getProfilePhoto()" alt="User Avatar" />
</div>
0 голосов
/ 06 ноября 2019

Могут быть проблемы с разрешениями, есть ли у вас доступ к общедоступному каталогу, если вы можете проверить свои разрешения? то есть:

ls -li public

теперь проверьте, есть ли у www-data или nginx разрешение на чтение в вашей папке image.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...