Архив

Статии по ключова дума: ‘излиза’

Пренасочване на порт през SSH

8 юни, 2010 1 коментар

Вече за трети път ме пита един човек за това и ще го напиша тук и край!. Идеята на това пренасочване е че се прави ssh тунел до машината на която има пуснат ssh server. По този начин връзката между вас и машината е защитена през ssh v2.  А сега идеята е, че искаме да ползваме тази машина като защитетно прокси(ssh) и да излизаме от тази машина. За целта изпълняваме:

ssh -D 1080 user@122.26.35.1 -p 22 -v

След това във Firefox на socket въвеждате localhost и port 1080. Сега целият трафик минава от вас-> 122.26.35.1 и след това от него излиза навън. Това е!.

PS: Тук съм писал за тунел през puTTY(за windows потребителите)-> SSH тунел чрез PuTTY

PHP: Стартиране на конзолно приложение с моментален изход

Идеята е да изпълня някакво конзолно приложение от php(web) което line by line да ми извежда изхода. Пример правя ping до машина и не искам да изчакам крайния резултат на ping-a, а всеки ред да излиза. Реших да споделя  простичкото решение на въпроса:

<?php
$handle = popen("ping example.com -c 11  2>&1", 'r');
while(!feof($handle)) {
$buf = fgets($handle);
echo "$buf<br/>\n";
flush();
}
pclose($handle);
?>

PS: popen може да се ползва и да лоадва файлчета, пример: tail -f /var/log/mysq/mysq.log

Спиране на Crash Recovery Restore Session във Firefox

24 май, 2010 Няма коментари

В едно приложение постоянно се налага да се kill-не Firefox и след като се пусне (или съживи лисичката) излиза прозорче в което да се избере нова сесия или да се върне старата преди kill-а. Аз не се нуждая от Crash Recovery Restore Session и за целта ще го махна по следния начин(става и във GUI настройките).

Ето го първо прозорчето което искам да се премахне:

Сега ще опиша как се маха прозорчето:

1. Стартирам Firefox
2. В адрес бара пиша: "about:config"
3. Намирам "browser.sessionstore.resume_from_crash" и натискам два пъти бързу в/у него(Идеята е да бъде false)

Ето и снимка на "супер сложното обяснение" по- горе:

PS: Изображенията са взети от google images :)

Превод от микросметка към картова сметка в Epay.bg

15 май, 2010 6 коментари

Ползвам от доста време epay.bg, но не ми се е налагало да прехвърлям пари от микросметка към картова сметка(моята карта). Това ми се налага понеже един приятел ми беше прехвърлил една сума, която за да ползвам от банкомат трябва да прехвърля в тази картова сметка. По- долу ще опиша какво трябва да се случи:) :
1. Необходим е IBAN на картата получател:

За да се открие нашият регистриран IBAN: Справки->  Проверете наличните суми по Вашите карти ->" Проверка за наличност". След това излиза IBAN на картата.

2.Отваря се форма за извършване на превод

Натиска се секция "Преводи"-> "Изпратете вносна бележка по банкова сметка (към физическо лице, фирма или бюджета)" и е необходимо да се въведат следните полета:

Платете с: "Микросметка"
Изберете банка оператор: ----  *
Сума на превод: 59 лв. *
Основание за плащане: Прехвърляне от микросметка към картова сметка
Вносител: Име
Име на получателя: Име
Номер на сметка на получателя (IBAN): IBAN които копирах по- рано.

3. След като се натисне бутона "Потвърди" един път е необходимо да се въведе ЕГН и втори път парола.

Допълнителна информация:
* За прехвърляне от микросметка е задължително да се избере "---"(празно). Ако при превод се използва, Централна Кооперативна Банка 0.80 лв. такса. Ако картата към която се прави превода е на Централна Кооперативна Банка- 0.40 лв. такса . Може да се избере и Първа Инвестиционна банка- 1 лв. такса.
* Примерна сума за превод 59 лв. В примерната микросметка имам 60.30 лв. -- такса обслужване- 1.30 лв.= 59 лв. За целта на "Сума на превод" пиша 59 лв. или в противен случай ще изпише, че няма достатъчна наличност.

php грешка: undefined function imagecreatefromgif

14 януари, 2010 1 коментар

Това е публикация за начинаещи web php разработчици :) (web и php , че и разработчик) :)
Пускате готов скрипт които вероятно не сте писали и ви излиза тази грешка:

Fatal error Call to undefined function imagecreatefromgif()

Отговорът на тази грешка е, че няма gd support за обработване на изображения. За целта го инсталираме(в случая deb базирано дистро):
apt-get install php5-gd

След това рестартираме apache:

/etc/init.d/apache2 restart

След това phpinfo() и виждате, че вътре вече има GD. Ето снимка:

Сега вече изпълнявате отново скритпа които даваше грешка и виждате, (че ви излиза друга грешка. Трябва да прочетете повече, шегувам се) че всичко е наред.

Проблеми при php скриптове които ползват много памет

20 декември, 2009 Няма коментари

Всъщност тук ще обсъдя случаите в които се пише php скрипт при изпълнението на които се извежда съобщение като:" Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 500520576 bytes) in /var/www/a.php on line 4" или с няколко думи скрипта използва повече памет от колкото му е заделена предварително. Идеята тук е защо излиза това съобщение и  как да го поправим(действието :) ).

1. Предварително заделенета памет се определя от конфигурационния файл /etc/php5/php.ini) php.ini :

memory_limit = 32M      ; Maximum amount of memory a script may consume (32MB)

В този конфигурационен файл паметта която може да използва php скрипт е максимум 32 MB. Тази стойност може да се променя разбира се.

След промяна в php.ini трябва да се рестартира apache2. След това може да се изпълни phpinfo(); и ще видите новата заделена памет за php/скрипт.

2. Друг вариант за промяна на memory_limit е за при php5-cli (command-line interpreter for the php5 scripting language) или пример:

php -d memory_limit=512M a.php

По този начин при изпълненито на a.php се заделя 512 MB памет като се пренебрегва тази стойност от php.ini

3. Интересна функция в php е memory_get_usage() която връща текущата използва памет от php скрипта:

<?php

echo memory_get_usage() . "\n"; // 48504

$a = str_repeat("mpetrov.net",100104 );

echo memory_get_usage() . "\n"; // 1150084

unset($a);

echo memory_get_usage() . "\n"; // 48504

?>

По този начин може да се направи извод колко памет ползва php от самото php. Последния пример показва всъщност, че трябва да се unset всички променливи които няма да се ползват повторно за да не заемат памет :)

Извод: Бяха разгледани няколко причини и решения за грешката в php: Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 500520576 bytes)

Поправяне на повредена mysql таблица

2 октомври, 2009 Няма коментари

Понеже забелязах, че има доста питания за поправяне на повредена таблица в mysql база реших в тази публикация да напиша някои от начините които ползвам.

Обикновено когато таблицата е повредена излиза следното съобщение:

"… is marked as crashed and should be repaired …"

Първи начин:

myisamchk -r <DatabaseName>\*.MYI

Втори начин:

repair table powredena_tablica_w_mysql

Ето набързо написах един прост script които предлага repair, optimize и check на таблиците в mysql:

#!/bin/sh
#Mysql Table Fixer v 0.75 |  Written by amri

#Variables

MUSER=$2
MPASS=$3
DBNAME=$4

Usage() {
echo "Usage: $0"
echo " --optimize mysqluser mysqlpass tablename"
echo " --repair mysqluser mysqlpass tablename"
echo " --check mysqluser mysqlpass tablename"
return
}

repair_mysql_table()
{
TABLENAMES=`mysql -u$MUSER -p$MPASS -D $DBNAME -e "SHOW TABLES\G;"|grep 'Tables_in_'|sed -n 's/.*Tables_in_.*: \([_0-9A-Za-z]*\).*/\1/p'`
for TABLENAME in $TABLENAMES
do
mysql -u$MUSER -p$MPASS -D $DBNAME -e "$1 TABLE $TABLENAME;"
done
}

if [ $# -eq 0 ] ; then
Usage
exit 1
fi

case $1 in
--repair) repair_mysql_table "repair";;
--optimize) repair_mysql_table "optimize";;
--check) repair_mysql_table "check";;
--help) Usage; exit 1;;
*) Usage; exit 1;;
esac

Един проблем по- малко с форумите

3 април, 2009 Няма коментари

Преди време когато бях пуснал форума на kakvo.org забелязах, че под IE от ляво на категорията във форума излиза снимка(която не съществува) на последните публикации, но си помислих, че ще се оправи с времето когато се напишат публикациите. Скоро пуснах форума на idobrich.com и когато добавих секция "Образование" всичко си беше наред(Под FF). Днес един приятел "sinhron"-Глобален модератор на Форум Добрич, репортна за същия проблем (в секция "Образование") както и при forum.kakvo.org и се наложи да видя как да го оправя.

Снимка на проблема във форума

Снимка на проблема във форума

мартин петров

мартин петров

мартин петров

мартин петров

мартин петров

Проблема беше в настройките на съответната категория-форум:

Forum image:
Location, relative to the phpBB root directory, of an additional image to associate with this forum.

Тук има Input поле което трябва да бъде празно и всичко се коригира успешно.

PS: Благодарности на  sinhron