
Возможно, есть способы и попроще, но я сделал так.
Защищать будем, например, Asterisk (по-умолчанию порт для протокола SIP 5060)
Создаем новую цепочку:
iptables -N asterisk-manual
iptables -I INPUT -i eth0 -p udp --dport 5060 -j asterisk-manual


Возможно, есть способы и попроще, но я сделал так.
Защищать будем, например, Asterisk (по-умолчанию порт для протокола SIP 5060)
Создаем новую цепочку:
iptables -N asterisk-manual
iptables -I INPUT -i eth0 -p udp --dport 5060 -j asterisk-manual
Коротко о главном
mod_rewrite – специальный модуль, входящий в состав Apache, позволяющий подменять адреса страниц. Например, «некрасивый» адрес страницы http://вашсайт.ru/showGroup.php?id=blog&subid=programming, можно сделать более «красивым» http:// вашсайт.ru/blog/programming.
Настройки перенаправления делаются в файле .htaccess.
Я не буду здесь подробно описывать, как это работает. В двух словах, включается mod_rewrite командой RewriteEngine On, далее, создаются правила перенаправления, в шаблонах перенаправления используются обычные регулярные выражения:
Читать далее «Флаги mod_rewrite»
[x-api]
name=x-api Packages for Enterprise Linux 6 - $basearch
baseurl=http://repo.x-api.net/centos6/$basearch/
enabled=1
gpgcheck=0
Устанавливаем Apache MPM-ITK или просто обновляем Apache, если он уже есть:
yum install httpd
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
yum -y install nodejs
если возникнут ошибки при установке
sudo yum install gcc-c++ make
проверяем
node -v
v8.12.0
Создаем файл hello_http.js со следующим содержимым
var port = 8080;
var http = require("http");
var server = http.createServer();
server.on('request', request);
server.listen(port, (err) => {
if (err) {
return console.log('something bad happened', err)
}
console.log(`server is listening on ${port}`)
})
function request(request, response) {
var store = '';
request.on('data', function(data){
store += data;
});
request.on('end', function(){
var js_name = JSON.parse(store);
console.log(js_name['name']);
//response.setHeader("Content-Type", "text/json");
//response.setHeader("Access-Control-Allow-Origin", "*");
//response.end(store)
//store = JSON.parse(store);.
response.end('city: '+js_name['address']['city']);
});
}
Получить расширение файла
echo preg_replace("/.*?\./", '', 'photo.jpg');
Результат работы примера:
jpg
Читать далее «Примеры использования регулярных выражений на php»
$OrderStatusId=60;
if(in_array($OrderStatusId, array(60,61,64))) {
print "Значение присутствует";
} else {
print "Значение не найдено";
}
или наоборот
$OrderStatusId=60;
if(!in_array($OrderStatusId, array(60,61,64))) {
print "Значение не найдено";
} else {
print "Значение присутствует";
}
$server="SERVER_IP";
$user="USER_NAME";
$pass="USER_PASS";
$database="BASE";
print "--START--<br>";
try{
$db = mssql_connect($server, $user, $pass);
if (!$db) throw new Exception ("Невозможно установить соединение с базой данных.");
if (!mssql_select_db($database,$db)) throw new Exception ("Невозможно выбрать базу данных.");
###
$query1 = "SET CONCAT_NULL_YIELDS_NULL ON"; # настройка для MSSQL (чтобы 'string'+NULL давало NULL, а не 'string')
if(!mssql_query($query1)) throw new Exception("Невозможно установить SET CONCAT_NULL_YIELDS_NULL ON");
###
$querys = "EXEC [dbo].[REP_OrdersClient] @DateBegin = '20180501', @DateEnd = '20180704', @ContractNumberPrimary = '12', @ContractNumber = '38957'";
$result=mssql_query($querys);
if (!$result) throw new Exception("Невозможно установить соединение с сервером");
if (!mssql_num_rows($result)) {
echo 'Не найдено ни одной записи.';
} else {
while ($row = mssql_fetch_array($result, MSSQL_ASSOC)) {
$results[]= $row;
}
}
mssql_free_result($result);
}
catch(Exception $e){
echo $e->getMessage();
}
print_r($results);
Перехват ошибок без остановки работы самого скрипта
$server='Server';
$user='Phpweb_po';
$pass='fzHjYt_';
$database='Main_';
try{
$db = mssql_connect($server, $user, $pass);
if (!$db) throw new Exception ("Невозможно установить соединение с базой данных.");
if (!mssql_select_db($database,$db)) throw new Exception ("Невозможно выбрать базу данных.");
$login_name=$_SESSION['Zend_Auth']['storage']->Usr;
$role=$_SESSION['Zend_Auth']['storage']->Roles[0]['Role'];
}catch (Exception $e){
echo $e->getMessage();
}
function makeClickableLinks($text) {
$text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)', '<a target="_blank" href="\\1">\\1</a>', $text);
$text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+)', '\\1<a href="http://\\2";>\\2</a>', $text);
$text = eregi_replace('([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})', '<a href="mailto:\\1">\\1</a>', $text);
return $text;
}