zver
- наш воображаемый пользователь-зверь.1. Какой пользователь в какое время заходил?
last
- история входов.last zver
- история входов зверя.lastb zver
- история неудачных входов зверя.last zver | grep "Jan 21"
- история входов зверя за 21 января сего года.last -s -7days zver
- история входов зверя за последние 7 дней.last -s 2025-01-15 -t 2025-01-21 zver
- история входов зверя за 15-21 января 2025 года.2. Действия того или иного пользователя?
cat /home/zver/.bash_history
- история команд зверя.who -u
- показывает активных пользователей (терминалы и время входа).ps -u zver
- показывает список активных процессов зверя.sudo iotop -u zver
- мониторинг ввода вывода пользователя зверя (в режиме реального времени).sudo iftop -f "src user zver"
- показывает сетевой трафик зверя.sudo tail -f /var/log/syslog | grep zver
- просмотр действий зверя в реальном времени.sudo journalctl -f | grep zver
- отслеживание действий зверя в реальном времени (если используется systemd).sudo lsof -u zver
- какие файлы открыты у зверя.find /home/zver -type f -mmin -60
- какие файлы изменил зверь за последний час.stat /home/zver/nomera-devchonok.txt
- показывает подробности что делал зверь с файлом стратегического назначения.3. Если пользователь пользовался sudo -i, sudo -s, sudo su, как посмотреть, что он делал под этими оболочками?
sudo grep zver /var/log/auth.log
- история команд (втч. под sudo) зверя.sudo zgrep zver /var/log/auth.log*
- просмотр истории команд зверя из текущих и архивных логгов.sudo aureport -x --summary
- показывает сводку команд (втч. под sudo).'default/<id:\d+>/brand-<brand:\d+>' => 'default/index',
'default/<id:\d+>' => 'default/index',
'default' => 'default/index',
echo Html::a('test', ['default/index', 'id' => $id, 'brand' => $brand])
echo Html::a('test', ['default/index', 'id' => $id])
echo Html::a('test', ['default/index'])
http://site.loc/default/index/3/brand-2
http://site.loc/default/index/3
http://site.loc/default/
RewriteEngine On
RewriteRule ^(frontend|backend)/web/ - [L]
RewriteCond %{REQUEST_URI} ^/(admin)
RewriteRule ^admin(\/?.*)$ backend/web/$1 [L]
RewriteCond %{REQUEST_URI} ^/
RewriteRule ^(\/?.*)$ frontend/web/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
'baseUrl' => '/admin'
http://site.com
попадёте на frontend, а по адресу http://site.com/admin
- в админку.http://site.com/subsite
.RewriteEngine On
RewriteRule ^(frontend|backend)/web/ - [L]
RewriteCond %{REQUEST_URI} ^/(subsite/admin)
RewriteRule ^admin(/.*)?$ backend/web/$1 [L]
RewriteCond %{REQUEST_URI} ^/(subsite)
RewriteRule ^(.*)$ frontend/web/$1 [L]
$baseUrl = str_replace('/backend/web', '', (new yii\web\Request)->getBaseUrl());
'baseUrl' => $baseUrl . '/admin'
class DefaultController extends Controller
{
public $test;
public function actionIndex()
{
$this->test = 'test';
/* остальной код метода */
}
}
<?= Yii::$app->controller->view->context->test ?>
$(function() {
$('#form-data').on('submit', function(e){
e.preventDefault()
var form = $(this); // Предположу, что этот код выполняется в обработчике события 'submit' формы
var data = new FormData(); // Для отправки файлов понадобится объект FormData. Подробнее про него можно прочитать в документации - https://developer.mozilla.org/en-US/docs/Web/API/FormData
// Сбор данных из обычных полей
form.find(':input[name]').not('[type="file"]').each(function() {
var field = $(this);
data.append(field.attr('name'), field.val());
});
// Сбор данных о файле (будет немного отличаться для нескольких файлов)
var filesField = form.find('input[type="file"]');
var fileName = filesField.attr('name');
var file = filesField.prop('files')[0];
data.append(fileName, file) ;
// Отправка данных
var url = 'upload.php';
$.ajax({
url: url,
type: 'POST',
data: data,
contentType: false,
cache: false,
processData:false,
success: function(response) {
console.log(response)
}
});
})
});
<form id="form-data" action='#'>
<input type="file" name="test" multiple>
<input type="submit" name='submit' value="Send">
</form>
<select name="spjax" id="spjax">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<?php
Pjax::begin([
'id' => 'view-mode-pjax'
])
?>
<div class="col-lg-4">
<h2>Heading <?= $Ipjax ?></h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et
dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip
ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu
fugiat nulla pariatur.</p>
<p><a class="btn btn-default" href="http://www.yiiframework.com/doc/">Yii Documentation »</a></p>
</div>
<?php
Pjax::end();
$this->registerJs("
$(function(){
$('#spjax').on('change', function(){
var Id = $(this).val()
console.log(Id)
$.pjax.reload({
container: \"#view-mode-pjax\", // контейнер, в котором надо обновить данные.
url: window.location.href,
timeout: 0,
data: {
'id': Id // данные, которые отправляются на сервер.
},
});
})
})
", View::POS_END)
?>
public function actionIndex()
{
$Ipjax = Yii::$app->request->get('id') ?: null;
return $this->render('index', ['Ipjax' => $Ipjax]);
}
<?php
yii\widgets\Pjax::begin(['id' => 'new_note', 'enablePushState' => false]) ?>
<?= Html::beginForm(['/system/system/fastsearch'], 'post', ['data-pjax' => '1','enctype' => 'multipart/form-data', 'class'=>'form-inline' ]) ?>
<?= Html::input('text', 'search', "", ['class' => "form-control form-control-sm ml-3 w-75"]) ?>
<?= Html::submitButton('<i class="glyphicon glyphicon-search"></i> Найти', ['class' => 'btn btn-default', 'id'=>'press_search'])?>
<?= Html::endForm() ?>
<div id="reload-pjax"><?= $search ?? null ?></div>
<?php Pjax::end();
?>
public function actionFastsearch()
{
if(Yii::$app->request->isAjax){
$search = Yii::$app->request->post('search');
return $this->render('index', ['search' => $search]);
}
}
<?php
Pjax::widget([
'id' => 'reload-pjax',
'enablePushState' => false,
'enableReplaceState' => false,
'formSelector' => '#options-form',
'submitEvent' => 'submit',])
?>
<?= Html::beginForm(['/site/fastsearch'],
'post',
[
'class'=>'form-inline',
'id' => 'options-form'
]) ?>
<?= Html::input('text', 'search', "", ['class' => "form-control form-control-sm ml-3 w-75"]) ?>
<?= Html::submitButton('<i class="glyphicon glyphicon-search"></i> Найти', ['class' => 'btn btn-default', 'id'=>'press_search'])?>
<?= Html::endForm() ?>
<div id="reload-pjax"></div>
'value' => 'profile.last_name'
. Так же нельзя сделать свойства модели (сущности), приватными. Из-за чего состояние модели можно изменить где угодно и вы никак не проконтролируете это.Yii::$app->user->id
. Вам приходится делать докблок, что User
это common/auth/Identity
, а не yii/web/User
sudo systemctl reload ssh.service
sudo systemctl status ssh.service
фев 22 22:43:11 srv16 systemd[1]: Reloading OpenBSD Secure Shell server...
фев 22 22:43:11 srv16 systemd[1]: Reloaded OpenBSD Secure Shell server.
фев 22 22:43:11 srv16 sshd[462]: Server listening on 0.0.0.0 port 4453.
фев 22 22:43:11 srv16 sshd[462]: Server listening on :: port 4453.