File: /etc/apt/sources.list
deb http://www.pvv.ntnu.no/~knuta/xmms/squeeze ./
deb-src http://www.pvv.ntnu.no/~knuta/xmms/squeeze ./
apt-get update && apt-get install xmms -y
Този диск е 3TB , не че има значение :)
Ето го и метода:
# fdisk -l /dev/sdb
Disk /dev/sdb: 3000.6 GB, 3000592982016 bytes
255 heads, 63 sectors/track, 364801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0×00000000
Disk /dev/sdb doesn’t contain a valid partition table# parted /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted!(parted) mklabel gpt
Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? yes
(parted)(parted) mkpart primary ext3 0 100%
(parted) quit
mkfs.ext3 /dev/sdb1
Днес стартирахме един проект -- Онлайн речник -- re4nik.com . Речникът с изцяло уникален и модерен дизайн. Речникът е изцяло безплатен и лесен за ползване.
Тук всъщност има група от речници:
1. Българо-Английски речник
2. Английско- Български речник
3. Тълковен речник
4. Синонимен речник
5. Правописен речник
Не на последно място са :
Възможност за превод на текст на много езици
Съновник
Заповядайте в онлайн речник: re4nik.com
Идеята е много проста ако някои качи web shell на машината да не може да го ползва.
Ето го решението със suhosin:
File /etc/php5/apache2/conf.d/suhosin.ini
suhosin.executor.func.blacklist =system, exec, shell_exec, passthru, ini_alter, dl, pfsockopen, openlog, syslog, readlink, symlink, link, leak, fsockopen, popen, escapeshellcmd, apache_child_terminate apache_get_modules, apache_get_version, apache_getenv, apache_note,apache_setenv,virtual
С php5 (Във virtualhost или в целия apache2.conf):
<IfModule mod_php5.c>
php_admin_flag safe_mode on
php_admin_value disable_functions "system, exec, shell_exec, passthru , ini_alter, dl, pfsockopen, openlog, syslog, readlink, symlink, link, leak, fsockopen, popen, escapeshellcmd, apache_child_terminate apache_get_modules, apache_get_version, apache_getenv, apache_note,apache_setenv,virtual"</IfModule>
Аз лично ползвам вариант 1
PS:
Като цяло е добре да се добави и "set_time_limit", но не съм го добавил защото wordpress го ползва и ако има такъв сайт няма да може да обновява постовете си.
Премахнах и error_log, че : "[Wed May 30 22:04:51 2012] [error] [client xxx.xxx.xxx.xxx] PHP Warning: error_log() has been disabled for security reasons in /path/file.php on line 306, referer: http://site.com"
Opencart имат "Супер" DB структура и по- точно полетата "key" и "group"
mysql> describe oc_setting;
+------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+----------------+
| setting_id | int(11) | NO | PRI | NULL | auto_increment |
| store_id | int(11) | NO | | 0 | |
| group | varchar(32) | NO | | NULL | |
| key | varchar(64) | NO | | | |
| value | text | NO | | NULL | |
| serialized | tinyint(1) | NO | | NULL | |
+------------+-------------+------+-----+---------+----------------+
6 rows in set (0.00 sec)
Готино а ?
Проблема тук е следния, че в магазина на OpenCart е добавен Български език само на FrontEnd без админ панела, а един колега е сетнал Български език и за админ панела. При това положение излиза следната грешка:
"Notice: Error: Could not load language bulgarian! in /…/public_html/shop/system/library/language.php on line 39"
Е решението е да се фиксне в базата както аз направих:
update oc_setting set value='en' where setting_id=24303;
PS: Поста е как да се фиксне тази грешка, но не се стърпях да напиша колко "добре" са подбрани имената на колоните в таблицата oc_setting
Готини плъгини за WordPress Multisite е:
1. Multisite Plugin Manager
2. Hyper Cache Extended . Подкрепете Българаското. На адаша Мартин!
3. Diamond MultiSite Widgets
4. All in One SEO Pack
5. Akismet
6. Yet Another Related Posts Plugin
7. SEO Smart Links
За наспамени блогове от коментари могат да се премахнат лесно така:
delete from zna_comments where comment_approved!=1;
delete from zna_1_comments where comment_approved!=1;
delete from zna_2_comments where comment_approved!=1;
delete from zna_3_comments where comment_approved!=1;
…
Ако ПРЕКАЛЕНО много са наспамени т.е. 100% така:
delete from wp_comments;
delete from zna_1_comments;
delete from zna_2_comments;
delete from zna_3_comments;
Идеята е да се ползва системата за коментари на facebook:
1. Създава се приложение за коментари:
http://www.facebook.com/developers/createapp.php
App Display Name: example_comments
App Domain:example.com
Website-> Site URL: http://example.com
http://developers.facebook.com/tools/comments?id=191130727657303
2. Взима се кода
http://developers.facebook.com/docs/reference/plugins/comments/
<div id='fb-root'></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = '//connect.facebook.net/bg_BG/all.js#xfbml=1&appId=365185030181491';
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div class='fb-comments' data-href='http://firmi1.com' data-num-posts='2' data-width='640'></div>
3. Слага се и друг код
<meta property='fb:admins' content='100000589059407' />
<meta property='fb:app_id' content='365185030181433' />
$url="http://example.com/haha/url";
echo "
<br><br><b>Коментирай свободно:</b>
<br><br>";
get_facebook_comment($url,510);
Идеята е, че трябва да се обновят 10 блога на WordPress и то бързичко с идеята при следващ ъпдейт да става лесно.
Понеже системата е писана на php реших и скриптчет ода бъде на php . Ето го и него:
<?php
#############################################
$wordpress_root_dirs=array(
"/var/www/sait1.com/",
"/var/www/sait2.com/",
"/var/www/sait3.com/",
"/var/www/sait4.com/",
"/var/www/sait5.com/",
"/var/www/sait6.com/",
"/var/www/sait7.com/",
"/var/www/sait8.com/",
"/var/www/sait9.com/",
"/var/www/sait10.com/"
);$BDIR="/tmp/backup_upgraded_wordpress";
$NDIR="$BDIR/latest_wordpress_files";#############################################
function dhs_lr_str($a,$b,$c){$a=explode("$a",$c);$b=explode("$b",$a[1]);return addslashes(trim($b[0]));};
$count_wp_blogs=count($wordpress_root_dirs)-1;@system("mkdir -p $NDIR");
chdir("$NDIR");echo "
###########################################################################
######## Mass Wordpress Updater ver. 0.1 by amri -- www.mpetrov.net ########
###########################################################################
\n";echo "Downloading Latest WordPress … \n";
system("wget -q http://wordpress.org/latest.zip -O $NDIR/latest.zip");
system("unzip -o -q $NDIR/latest.zip");$count_upd_wp=0;
foreach ($wordpress_root_dirs as $RDIR)
{
$count_upd_wp++;
echo "Update Wordpress blogs $count_upd_wp/$count_wp_blogs\n";$buf=file_get_contents("$RDIR/wp-config.php");
$DB_NAME=trim(dhs_lr_str("define('DB_NAME', '","'",$buf));
$DB_USER=trim(dhs_lr_str("define('DB_USER', '","'",$buf));
$DB_PASSWORD=trim(dhs_lr_str("define('DB_PASSWORD', '","'",$buf));
$DB_HOST=trim(dhs_lr_str("define('DB_HOST', '","'",$buf));
$DB_TABLE=trim(dhs_lr_str('$table_prefix = \","'",$buf));
$WDIR="$BDIR/$DB_NAME";@system("mkdir -p $WDIR");
chdir("$WDIR");echo "Backup Old WordPress ($RDIR) DB: $DB_NAME\n";
system("mysqldump -u$DB_USER -p$DB_PASSWORD $DB_NAME > $WDIR/$DB_NAME.sql");echo "Backup Old WordPress ($RDIR) Files\n";
system("cp -Rp $RDIR/ $WDIR/wordress_files/");echo "Replace Old WordPress($RDIR) Files\n";
system("cp -ar $NDIR/wordpress/* $RDIR/");mysql_connect($DB_HOST,$DB_USER,$DB_PASSWORD);mysql_select_db($DB_NAME);
$result = mysql_query("select option_value from ".$DB_TABLE."options where option_name='siteurl'");
$row = mysql_fetch_array($result);
$siteurl=stripslashes($row['option_value']);$ch1=curl_init();
curl_setopt($ch1,CURLOPT_URL,"$siteurl/wp-admin/upgrade.php?step=1&backto=");
curl_setopt($ch1,CURLOPT_RETURNTRANSFER,1);
$buf=curl_exec($ch1);
curl_close($ch1);
};
?>
Изходът е ето това:
###########################################################################
######## Mass WordPress Updater ver. 0.1 by amri -- www.mpetrov.net ########
###########################################################################Downloading Latest WordPress …
Update WordPress blogs 1/12
Backup Old WordPress (/var/www/sait1.com/) DB: sait1DB
Backup Old WordPress (/var/www/sait1.com/) Files
Replace Old WordPress(/var/www/sait1.com/) Files
Update WordPress blogs 2/12
Backup Old WordPress (/var/www/sait2.com/) DB: sait2DB
Backup Old WordPress (/var/www/sait2.com/) Files
Replace Old WordPress(/var/www/sait2.com/) Files
Update WordPress blogs 3/12
Backup Old WordPress (/var/www/sait3.com/) DB: sait3DB
Backup Old WordPress (/var/www/sait3.com/) Files
Replace Old WordPress(/var/www/sait3.com/) Files
….
Може да го изтеглите от тук: wordpress_mass_upgrade
Тази публикация ще обясни в 10 стъпки как се инсталира opencart 1.5.1.3 и българският пакет на потребителската част:
1. Прави се Потребител и парола в MySQL ( ДА НЕ СЕ ПОЛЗВА ROOT)
2. Всички файлове от папката upload се качат в главната root директория примерно "public_html"
3. Изпълняват се тия права:
chmod 0755 or 0777 image/
chmod 0755 or 0777 image/cache/
chmod 0755 or 0777 image/data/
chmod 0755 or 0777 system/cache/
chmod 0755 or 0777 system/logs/
chmod 0755 or 0777 download/
chmod 0755 or 0777 config.php
chmod 0755 or 0777 admin/config.php
4. Инсталира се през уеб инсталатора
5. Изтрива се папката install
6. Изтегля се http://www.opencart.com/index.php?route=extension/extension/info&extension_id=4193&filter_search=bulgarian&filter_license=0&filter_download_id=23&sort=e.date_modified&order=DESC
Превода е само за потребителската част, но не смятам, че е проблем. Има и пълен пакет за потребителската и административната част за 10$. Ако някои не може да се справи с англисйкия на админ панел смятам, че е редно да плати 10 $, все пак 10 долара не са никак много.
7. Разархивира се сваления файл и съдържанието му се кача в и "catalog\language" .
8. Настройки на езика от административния панел (http://example.com/admin/):
От административния панел на магазина se изберa System -> Localisations -> Languages -> Insert.
Попълват се полетата:
Language Name: Bulgarian
Code: BG
Locale: bg.UTF-8,BG,bulgarian
Image: bg.png
Directory: bulgarian
Filename: bulgarian
Status: Enabled
Sort Order: 1
9. Променяте Sort Order на английския език на "2"
10. Това е всичко. Пиете по една биричка за добре свършената работа.