Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Раскопал в англо документации, что для доступа по ssh нужно прописать хост vagrant@127.0.0.1 и пароль vagrant .
а я без пароля пытался зайти по ключу.
почему то на русских сайтах об этом ни слова.
установил homestead. создал ключи для ssh, поместил их в папку ~/.ssh/
В Homestead.yaml пути до ключей корректные.
В браузере homestead.app сайт открывает.
Но если зайти через Putty, пишу хост vagrant@127.0.0.1 , порт 2222, тогда пишет:
Using username "vagrant".
vagrant@127.0.0.1's password:
Access denied
vagrant@127.0.0.1's password:
Почему он просит пароль если авторизация должна быть по ключу?
Во что выдает консоль при выполнении команды homestead up
Microsoft Windows [Version 6.1.7601]
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.
C:\Users\Unbreakable>homestead up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'laravel/homestead'...
←[K==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'laravel/homestead' is up to date...
==> default: Setting the name of the VM: homestead
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports...
default: 80 (guest) => 8000 (host) (adapter 1)
default: 443 (guest) => 44300 (host) (adapter 1)
default: 3306 (guest) => 33060 (host) (adapter 1)
default: 5432 (guest) => 54320 (host) (adapter 1)
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Remote connection disconnect. Retrying...
default:
default: Vagrant insecure key detected. Vagrant will automatically replace
default: this with a newly generated keypair for better security.
default:
default: Inserting generated public key within guest...
default: Removing insecure key from the guest if it's present...
default: Key inserted! Disconnecting and reconnecting using new SSH key...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
default: The guest additions on this VM do not match the installed version o
f
default: VirtualBox! In most cases this is fine, but in rare cases it can
default: prevent things such as shared folders from working properly. If you
see
default: shared folder errors, please make sure the guest additions within t
he
default: virtual machine match the version of VirtualBox you have installed
on
default: your host and reload your VM.
default:
default: Guest Additions Version: 5.0.4
default: VirtualBox Version: 5.1
==> default: Setting hostname...
==> default: Configuring and enabling network interfaces...
==> default: Mounting shared folders...
default: /vagrant => C:/Users/Unbreakable/AppData/Roaming/Composer/vendor/la
ravel/homestead
default: /home/vagrant/Code => C:/Users/Unbreakable/Code
==> default: Running provisioner: file...
==> default: Running provisioner: shell...
default: Running: inline script
==> default: grep: unrecognized option '---- BEGIN SSH2 PUBLIC KEY ----
==> default: Comment: "rsa-key-20161210"
==> default: AAAAB3NzaC1yc2EAAAABJQAAAgEApGtiFTeR7gu8htc13X0t1Ll1Ca5gVK6CWW2k
==> default: rodjChuNBhotZoLeENkfcRKi6yKWWvG69vtAPd32uR9UdKyZHfiAJtNUBTQCU/UL
==> default: 5nVSSkoxkocrE8G4p0rsY/hKjOv4aalFdkyieg/w8UWAj8ZRpu54Utta0pZY7BEO
==> default: C3/hUksIXxpbfNRCrvPKUNNbunO+b/5Mqe4rRzxSpwWW6FXd7B+sqP3Y/Fqs6ZDn
==> default: Dp7I79jd2hfmbzn0vP21Ha8RxMBn02N/EB4C8y4udXUV0hsoprJFcdV35J18tCmj
==> default: 3RB6mxznKSvck87R7NqYHdt8S2Kw4EJJC7UKi6kjG/OqQvuDX1Yg5z4jLzDrOnuV
==> default: usb+CM7XOXRveNEbt7Jxb6J0dzKL23V9NODyQpwgJwSDVY00iGsb3T69Sh3Dt7Xy
==> default: wJ9SpNFOol9aDLQ7h3r7OiQ5fa1Ohcfud4Rib3ogQXDQuhhHtwjIBLKIPuutBjzY
==> default: S/Un3/sf2VrzC3IIP179aO2TQ+Qj08RedpVc+WiCWhGQ5gDewnlj/ha2vv3tYlpG
==> default: dNso6oRx/e3ByUNxvzkUX9+C5bWEHOg8A+488HvZq5OkKKTQGWmfnqpRonfN3aoe
==> default: B9yn3KRdhKoA0qh0f9YZd2HKfUvRac+ihVMJ8JtmcMjp2wwjWQFiivtlsnEClEZL
==> default: DiVCnOs=
==> default: ---- END SSH2 PUBLIC KEY ----
==> default: '
==> default: Usage: grep [OPTION]... PATTERN [FILE]...
==> default: Try 'grep --help' for more information.
==> default: ---- BEGIN SSH2 PUBLIC KEY ---- Comment: "rsa-key-20161210" AAAAB3N
zaC1yc2EAAAABJQAAAgEApGtiFTeR7gu8htc13X0t1Ll1Ca5gVK6CWW2k rodjChuNBhotZoLeENkfcR
Ki6yKWWvG69vtAPd32uR9UdKyZHfiAJtNUBTQCU/UL 5nVSSkoxkocrE8G4p0rsY/hKjOv4aalFdkyie
g/w8UWAj8ZRpu54Utta0pZY7BEO C3/hUksIXxpbfNRCrvPKUNNbunO+b/5Mqe4rRzxSpwWW6FXd7B+s
qP3Y/Fqs6ZDn Dp7I79jd2hfmbzn0vP21Ha8RxMBn02N/EB4C8y4udXUV0hsoprJFcdV35J18tCmj 3R
B6mxznKSvck87R7NqYHdt8S2Kw4EJJC7UKi6kjG/OqQvuDX1Yg5z4jLzDrOnuV usb+CM7XOXRveNEbt
7Jxb6J0dzKL23V9NODyQpwgJwSDVY00iGsb3T69Sh3Dt7Xy wJ9SpNFOol9aDLQ7h3r7OiQ5fa1Ohcfu
d4Rib3ogQXDQuhhHtwjIBLKIPuutBjzY S/Un3/sf2VrzC3IIP179aO2TQ+Qj08RedpVc+WiCWhGQ5gD
ewnlj/ha2vv3tYlpG dNso6oRx/e3ByUNxvzkUX9+C5bWEHOg8A+488HvZq5OkKKTQGWmfnqpRonfN3a
oe B9yn3KRdhKoA0qh0f9YZd2HKfUvRac+ihVMJ8JtmcMjp2wwjWQFiivtlsnEClEZL DiVCnOs= ---
- END SSH2 PUBLIC KEY ----
==> default: Running provisioner: shell...
default: Running: inline script
==> default: Running provisioner: shell...
default: Running: C:/Users/UNBREA~1/AppData/Local/Temp/vagrant-shell20161214
-3956-99x66m.sh
==> default: Running provisioner: shell...
default: Running: C:/Users/UNBREA~1/AppData/Local/Temp/vagrant-shell20161214
-3956-93ylub.sh
==> default: nginx stop/waiting
==> default: nginx start/running, process 1896
==> default: php5-fpm stop/waiting
==> default: php5-fpm start/running, process 1911
==> default: Running provisioner: shell...
default: Running: C:/Users/UNBREA~1/AppData/Local/Temp/vagrant-shell20161214
-3956-16qeeog.sh
==> default: mysql:
==> default: [Warning] Using a password on the command line interface can be ins
ecure.
==> default: Please use --connect-expired-password option or invoke mysql in int
eractive mode.
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what
went wrong.
C:\Users\Unbreakable>
спасибо за подробный ответ
Здравствуйте.
Я новичок в laravel, поэтому у меня возникли вопросы.
Помогите узнать на них ответ, кому не сложно.
1) При установке нового package командой composer update, помимо установки нового package происходит обновление установленных ранее package.
Если ли возможность установить пакет, через консоль, без обновления ранее установленных пакетов? если да то как?
2) Есть сайт, на laravel, на который нужно установить пакет. Сайт лежит на сервере, где не установлен composer(либо нет к нему доступа).
Получится ли сделать так:
- я на локальном сервере, разворачиваю копию сайта. Устанавливаю, через composer пакет. Пакет установившийся в папку vendor, загружаю в соответствующую папку на сервере. Загружаю composer.json and composer.lock на сервер.
Достаточно ли этих действий,чтобы перенести пакет между копиями одного сайта?
наверно в AuthController, что то не так
А есть ли документация на русском языке?
Можно ли бекапить готовый индекс с сервера и перенести индекс на другой сервер?
Перенес сайт на laravel на локальный компьютер.
Развернул сайт на openserver.
Часть страниц работает с использованием компонента elasticsearch.
Установил elasticsearch на windows.
Страницы работающие без elasticsearch работают.
А при открытии страниц работающих через elasticsearch, выходит ошибка:
Missing404Exception in Connection.php line 564:
{"error":{"root_cause":[{"type":"index_not_found_exception","reason":"no such index","resource.type":"index_or_alias","resource.id":"incom_products","index":"incom_products"}],"type":"index_not_found_exception","reason":"no such index","resource.type":"index_or_alias","resource.id":"incom_products","index":"incom_products"},"status":404}
Как найти ошибку?
Нужно запускать переиндексацию?
Индекс elasticsearch храниться на сервере и при переносе сайта, elasticsearch не может индекс и по этому не работает?
само дополнение в папку vendor копировать нужно да?
Нашел готовое решение по своей задаче: https://github.com/Torann/laravel-geoip
Устанавливаю через composer, сделал все как описано в инструкции к установке.
Но что то не работает.
Выходят ошибки:
[07-Sep-2016 10:44:34 Europe/Moscow] PHP Fatal error: Class 'Torann\GeoIP\GeoIPServiceProvider' not found in D:\OpenServer\domains\site\bootstrap\cache\compiled.php on line 7651
[07-Sep-2016 10:44:34 Europe/Moscow] PHP Fatal error: Call to undefined method Illuminate\Support\Facades\Auth::user() in D:\OpenServer\domains\site\bootstrap\cache\compiled.php on line 6323
директория с файлами и папками.
а можно по подробнее с подключение? может ссылочки есть по этому поводу?
Здравствуйте.
Хочу подключить свою библиотеку в laravel.
В библиотеке определяется страна пользователя по ip.
К правильно подключить свою библиотеку и передать ip в контроллере и получить название страны?
$news = News::all(); // Все новости тебе не нужны, тут для примера
view()->share('footerNews', $news); // во всех шаблонах у тебя будет доступна переменная $news
Спасибо, то что нужно!
Что бы новости были на всех страницах надо передавать переменную с новостями во все шаблоны
Спасибо, добрый человек.
Но никак не могу понять, как передать в переменную массив с записями.
Так работает: view()->share('key', 'value');
Так пробую, но не выводится.
view()->share('news', New::class);
Подскажите как правильно сделать?
или нужно построители представлений использовать?
или вывести блок в виде Виджета?
ищу в поиске виджеты laravel, но информации почти нет.
как все таки вывести блок с новостями в подвале каждой страницы?
Здравствуйте. я новичек в laravel. Есть страница на которой выводятся новости, там все работает.
Пытаюсь вывести новости в футере каждой страницы, скопировал код из view, который выводит записи на странице со списком новости.
Но в результате последние новости в подвале выводятся только на странице со списком новостей, на других страницах в подвале пусто.
Читаю документацию,но нужное найти не могу.
пробовал через include во view вызвать view страницы новостей, но вместе с новостями выводятся дублирующий хедер и футер.
Помогите как организовать вывод последних новостей?
разобрался с 500 ошибкой.
оказывается вызывались свойства email_is_confirmed, которые отсутствуют в таблице.
Сейчас работает, данные сохраняются
Сейчас другая проблема, как сделать оправку формы на почту.
Почему возникает 500 ошибка помогите понять?
Какая именно ошибка возникает можно посмотреть в логе /storage/logs/laravel.log. Но лучше включить режим отладки в .env файле APP_DEBUG=true.
Ошибки в этом файле больше не появляются, но ошибка 500 все равно выдается при пост запросе.
При гет - запросе, то есть в браузере все нормально отображается.
А вот в логах openserver отображается ошибка:
PHP Fatal error: Uncaught exception 'InvalidArgumentException' with message 'Invalid Sentry DSN: http://sitecom' in D:\OpenServer\domains\sitecom\vendor\sentry\sentry\lib\Raven\Client.php:272
Сайт выгружен на локальный сервер и настройка RAVEN_DSN оказывается неверной для локального сервера.
Может ли ошибка 500 возникать из-за ошибки связанной с RAVEN_DSN?
За ссылку спасибо.
Делаю как описано по ссылке. Создал контроллер, модель, прописал route.php, создал миграцию для этого класса.
При открытии страницы, т.е. гет запросе страница с формой открывается.
Но при отправке формы методом пост, в консоли браузера пишет ошибка 500.
В роуте прописано так:
Route::group(['prefix' => 'flight'], function () {
Route::get('', [
'as' => 'flight.index',
'uses' => 'FlightController@index',
]);
Route::post('', [
'as' => 'flight.item',
'uses' => 'FlightController@updateFlight',
]);
});
Функция в контроллере отвечающая за обработку формы:
public function updateFlight(Request $request, ActivatorContract $contract)
{
$this->validate($request, [
'name' => 'required|max:255',
'email' => 'required|email|email_mailgun:' . uniqid() . '|email_registered',
'mess' => 'required|max:255'
]);
$flight = new Flight;
$flight->name = $request->input('name');
$flight->mess = $request->input('mess');
$email_updated = false;
if ($flight->email != $request->input('email')) {
$email_updated = true;
$flight->email = $request->input('email');
$flight->email_is_confirmed = false;
$contract->sendToken('email', $flight);
}
$flight->save();
return response()->json([
'status' => 'ok',
'message' => view('flight.flight-updated', ['email_updated' => $email_updated])->render()
]);
}
Почему возникает 500 ошибка помогите понять?
Спасибо.
Если никто не знает, может покажете где написано про сохранение в базу данных в laravel?
Здравствуйте.
Вот разбираюсь с работой laravel на примере отправки формы с сохранением в базу данных.
Вот разбираюсь с формой из документации: https://laravel.ru/docs/v5/validation
В ней есть кусок кода:
/**
* Сохранение новой статьи.
*
* @param Request $request
* @return Response
*/
public function store(Request $request)
{
$this->validate($request, [
'title' => 'required|unique:posts|max:255',
'body' => 'required',
]);
// Статья прошла проверку, сохранение в БД...
}
И я вот не понимаю какой код сохраняет данные в таблицу?
Или код сохранения данных в таблицу здесь не написан?
Помогите как нужно сохранять данные в таблицу?
И как задать в какую таблицу сохранять или название таблицы будет одинаково с названием контроллера?
Страницы 1