Не удается заставить Laravel-Filemanager работать в подпапке на удаленном сервере - PullRequest
0 голосов
/ 02 февраля 2019

На моем сайте Laravel 5.7 я использую Ckeditor вместе с Laravel-Filemanager.После того, как я выполнил все инструкции по установке, я установил, что он работает нормально локально.Никаких проблем на всех.Но я не могу заставить его работать на моем удаленном веб-сервере.

На удаленном сервере я поместил приложение Laravel в подпапку на 2 уровня ниже webroot.

В моем шаблоне блейд-сервера яиметь это (я пробовал использовать оба ресурса и URL-помощники в опциях URL, и оба они работают локально):

<script src="{{ asset('vendor/unisharp/laravel-ckeditor/ckeditor.js') }}"></script>
<script>
    var options = {
    filebrowserImageBrowseUrl: "{{ url('/laravel-filemanager?type=Images') }}",
    filebrowserImageUploadUrl: "{{ url('/laravel-filemanager/upload?type=Images&_token=') }}"
};
</script>
<script>
    CKEDITOR.replace('editor1', options);
</script>

Когда я хочу загрузить изображение в мой CKeditor, нажав кнопку Browse serverв моем локальном окружении он работает так, как должен, и URL-адрес выглядит в Laravel File Manager ('laravel /' - webroot):

http://laravel/laravel-filemanager?type=Images&CKEditor=editor1&CKEditorFuncNum=0&langCode=sv

Когда я делаю то же самое на моем удаленном сервере, URL-адресвыглядит следующим образом:

http://www.myremoteserver.com/subfolder1/subfolder2/public/laravel-filemanager?type=Images&CKEditor=editor1&CKEditorFuncNum=0&langCode=sv

... и все, что я получаю, это 404.

Я попытался очистить кэш маршрутов, конфигураций и сайтов.Я также попытался скопировать приведенный выше URL-адрес в удаленной среде и вставить его в новое окно без / public / part.

Есть ли кто-нибудь, кто может догадаться, что происходит?Любая помощь будет принята с благодарностью.

Ответы [ 2 ]

0 голосов
/ 05 февраля 2019

Я наконец получил его на работу.Я очистил папку веб-сервера и снова загрузил все файлы с самого начала вручную, а не клонировал репозиторий GIT.И тогда это сработало.Так что я на самом деле не уверен, что случилось.

В любом случае я добавил этот фрагмент ниже, где я хотел, чтобы CKeditor был в моем шаблоне лезвия:

<textarea id="editor1" name="story" class="form-control">{{ $story }}</textarea>

И это в нижней части шаблона лезвия, прямо перед @endsection.

  <script src="{{ asset('vendor/unisharp/laravel-ckeditor/ckeditor.js') }}"></script>
    <script>
        var options = {
            filebrowserImageBrowseUrl: "{{ url('/laravel-filemanager?type=Images') }}",
            filebrowserImageUploadUrl: "{{ url('/laravel-filemanager/upload?type=Images&_token=') }}"
        };
    </script>
    <script>
        CKEDITOR.replace('editor1', options);
    </script>

Обязательно опубликуйте в соответствии с инструкциями файлового менеджера:

php artisan vendor:publish --tag=lfm_config
php artisan vendor:publish --tag=lfm_public

и очистите кеши:

php artisan route:clear
php artisan config:clear

Также убедитесь, что папка vendor существует в вашей общедоступнойкаталог с папками файлового менеджера CKeditor и Laravel, в противном случае помощники asset и url не будут работать.Также проверьте в окне разработчика (F12 в браузере), каков ваш текущий путь к ckeditor.js.

0 голосов
/ 03 февраля 2019

Пожалуйста, поделитесь со мной, как получил ckeditor, чтобы загружать файлы, когда вы нажимаете кнопку отправить на сервер, потому что я искал его в течение около 2 дней, но пока нет решения.Я использую laravel 5.7 и unisharp laravel-filemanager, но решение не найдено.Я только видел, как добавить config.filebrowserUploadMethod = 'form'; в ckeditor congi.js, но даже после добавления я все еще не получил никакого решения.все остальные вещи, кажется, работают нормально.пожалуйста, я буду рад получить вашу помощь

...