ดูเหมือนว่าตั้งแต่ WP Robot 4 เป็นต้นไปจะไม่สามารถสั่งเปิดปิด Featured Image ได้
Featured image ก็คือ Thumbnail ที่แสดงรูปในหน้าหลักของเว็บ
บางทีมันก็เล่นเบิ้ล แสดงทั้ง featured image กับรูปใน post พร้อมๆ กัน
ซึ่งมันก็ขึ้นกับ Theme ที่ใช้ด้วย

ถ้าอยากปิดจริงๆ ต้องไปแก้ code กันครับ
ให้ไปแก้ไฟล์ wprobot.php บรรทัด 2,785 ให้ remark มันออกซะ

จาก set_post_thumbnail($insert, $attachments[0]->ID);
ให้เป็น //set_post_thumbnail($insert, $attachments[0]->ID);

 


เดิมๆ แล้ว munin ไม่มีใน repo ของ CentOS ดังนั้นเราต้อง download rpm มาก่อน
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rm -f rpmforge-release-0.3.6-1.el5.rf.i386.rpm

แล้วก็สั่งติดตั้ง
yum install munin munin-node

ทำให้ start พร้อมกับ system
chkconfig –levels 235 munin-node on
/etc/init.d/munin-node start

จากนั้นก็ reload หรือ restart apache
service httpd reload

ที่มา

 

Setup VPS CentOS 5

On May 7, 2013, in Hosting, Linux, by utalert

ฤกษ์งามยามดี ที่จะต้อง scale up งานได้แล้ว หลังจากที่ทดลอง scale up ด้วย baby gator มาหลายตัวพบว่าเดี๋ยวนี้มันไม่อึดเหมือนเมื่อก่อนแล้ว จะใช้มากขึ้นก็เปลืองงบ จำใจต้องโบกมือลามาหา VPS คุ้มกว่า รอบนี้อุดหนุน BudgetVM มาครับ

ครั้งนี้ต้องการชีวิตที่สบายขึ้นเลยเลิกคบ webmin มาหา Kloxo ดีกว่า
แต่มันไม่รองรับ Debian ใช้ได้แต่ CentOS 5 เท่านัั้น ก็เลยต้องศึกษาเพิ่มกันนิดหน่อย

หลังจากที่ติดตั้งเสร็จแล้วก็ update มันซะ ssh เข้าไปได้เลย
yum update -y

แล้วก็จัดการติดตั้ง Kloxo
wget http://download.lxcenter.org/download/kloxo/production/kloxo-installer.sh
sh kloxo-installer.sh –type=master

เสร็จแล้วก็มา config นิดหน่อย
ไปที่ http://domain.com:7778 หรือ https://domain.com:7777
login ด้วย user:admin password:admin

แล้วก็ Add DNS template ที่เมนู
DNS Templates -> Add DNS Template

จากนั้นก็มาเพิ่ม user (customer)
Clients -> Add Customer

แล้วถึงจะมาเพิ่ม domain ทีหลัง
ที่เมนู Domains เพื่อ add domain
แล้วก็ Install App เลือกลง CMS ตามที่ต้องการใช้งาน

ทีนี้ก็กลับมาที่ SSH เนื่องจากว่าตอนที่เรา add domain ไปแล้ว สิทธิ์ owner จะเป็นของ user (customer) คนนั้น ทำให้เวลาจะ update wp หรือลง plugin, theme เพิ่มมันจะติด permission แก้ไขด้วยการทำให้ apache เป็น owner path ทั้งหมดด้วยคำสั่ง
chown -R apache:apache /home/xxx

จากนั้นก็ทำการเคลียร์ค่า และ restart service ที่เกี่ยวข้องซะ เป็นอันเสร็จพิธี
sh /script/fixdns
sh /script/cleanup
service httpd restart
service named restart

 

ดูกันจะจะ โดนอีกครั้งแล้วครับพีน้อง ครั้งแรกโดนเมื่อ ต.ค. 54 มา พ.ค. 55 Gary เค้าจัดให้อีกแล้ว
ก็คงไม่สามารถพูดได้เต็มปากหรอกว่าไม่ได้ทำผิดกฎเลย มันก็คงมีบ้างหรอก ทั้งๆ ที่ก็พยายามทำให้ถูกต้องที่สุดแล้ว

เรื่องมันเริ่มจากใช้ TID เพลินจนครบ 500 ตัว ก็เลยมาเพิ่งรู้ว่าอ๋อ จำกัดที่ 500 นะ ไม่ใช่พัน 555+
ทีนี้ก็เลย ticket ไปอธิบายเหตุผลร้อยแปดพันเก้า ว่าขอเพิ่มนะ ต่อไปนี้จะใช้ประหยัดๆ (ซะที่ไหน)
เค้าก็ใจดีตอบว่าขอเวลาพิจารณา 2-3 วัน แล้วจะแจ้งกลับ นับจากที่ได้เมล์สุดท้าย ประมาณอาทิตย์นึง
เค้าก็ตอบกลับมา โดยคนเดิม Gary เหอ เหอ

ค่อนข้างมั่นใจครับในครั้งนี้ เพราะทะลึ่งไปขอ TID เพิ่มนี่แหละ เค้าก็เลยเข้ามา review account แล้วก็แจ้งข้อหา
โทษฐาน unclear link กับ misleading information

ในเมื่อโดนไปแล้วก็ช่างมัน ชีวิตต้องเดินต่อไป ก็จัดการเปลี่ยน TID, API ให้เป็น account ใหม่ซะ
ทั้งๆ ที่เค้าบอกว่าถ้าสมัครเข้ามาอีก จะแบนทันที โฮะ โฮะ

ในกรณีนี้คือทำ wp multisite ดังนั้นจึงสามารถไปแก้ TID, API ใน database ได้สบาย (หรือเปล่า)
ตรวจสอบแล้วพบว่า wp เก็บข้อมูลดังนี้

  • TABLE wp_X_posts FIELD post_content มี TID
  • TABLE wp_X_postmetaFIELD meta_value มี TID
  • TABLE wp_X_postmeta FIELD meta_value มี API Key

X ตามข้างบนคือเลขที่ระบบรันไปเรื่อยๆ ตาม sub domain ที่สร้าง ก็จะเริ่มตั้งแต่ 2 เป็นต้นไป
ทีนี้เราก็ไล่ Search & Replace TID, API Key ทั้ง 3 จุด ในทุก ๆ table โดยใช้ EditPlus ช่วยครับ
ที่ EditPlus ก็เขียนเลขไว้บรรทัดละตัวเช่น

2
3
4
5
6
7
8
9
10

แล้วก็ใช้ Search & Replace แบบ Regular expression

Find what:
^(.*)$

Replace with:
update wp_\1_posts set post_content = replace(post_content, ‘OLD_TID’, ‘NEW_TID’);
update wp_\1_postmeta set meta_value = replace(meta_value, ‘OLD_TID’, ‘NEW_TID’);
update wp_\1_postmeta set meta_value = replace(meta_value, ‘OLD_KEY’, ‘NEW_KEY’);

แล้วเราก็จะได้ sql command ยาวปรื๊ด เอาไปรันใน phpMyadmin ในทุก Host ทุก DB

ขออย่าให้ต้องทำแบบนี้บ่อยๆ นะ Gary 555+
You can’t kill me, you just make me stronger and crazier.

Tagged with:  

Optimize firefox

On December 11, 2011, in Uncategorized, by utalert

งานอย่างเราๆ ที่ต้องใช้ firefox + imacro หนักๆ ถ้าใช้งานหลาย profile ก็จะยิ่งหนักเครื่อง มาปรับให้มันกินทรัพยากรน้อยลงกันดีกว่า

about:config ที่ address bar แล้วก็แก้ค่าพวกนี้

network.http.pipelining    TRUE
network.http.pipelining.maxrequests    20
network.http.pipelining.ssl    TRUE
network.http.max-connections    128
network.http.max-connections-per-server    32
network.http.max-persistent-connections-per-proxy    20
network.http.max-persistent-connections-per-server    20
network.http.request.max-start-delay    0
network.http.proxy.version    1.0
network.http.proxy.pipelining    TRUE
network.dns.disableipv6    TRUE
security.dialog_enable_delay    0
browser.sessionhistory.max_total_viewers    0

คลิกขวา เพิ่มค่าพวกนี้เข้าไป

nglayout.initialpaint.delay    0
browser.sessionhistory.max_total_viewers    8
browser.cache.memory.capacity    4096
config.trim_on_minimize    TRUE
content.interrupt.parsing    TRUE
content.max.tokenizing.time    2250000
content.notify.interval    750000
content.notify.ontimer    TRUE
content.notify.backoffcount    5
content.switch.threshold    750000
ui.submenuDelay    0
plugin.expose_full_path    TRUE
network.http.pipelining.firstrequest    TRUE
network.dnsCacheEntries    512
network.dnsCacheExpiration    3600
อีกอันนึงก็เพิ่ม /Prefetch:1 เข้าไปที่ shortcut ของ FF
ลองปรับกันดูนะครับ ถ้ามีอะไรน่าปรับอีกก็แนะนำกันได้ครับ

 

25/5/2555
แก้เพิ่มอีก 6 ค่า ตามคำแนะนำของพี่ต่อ จัดการเป็น false ให้หมด

app.update.auto
app.update.disable_button.showUpdateHistory
app.update.enabled
app.update.service.enabled
browser.safebrowsing.enabled
browser.safebrowsing.malware.enabled

 
  1. แก้ไฟล์ wp-config.php โดยค้นหาบรรทัด define(‘DB_COLLATE’, ‘ ‘);
  2. เพิ่ม define(‘WP_ALLOW_MULTISITE’, true); ต่อจากบรรทัดข้างต้น แล้วเซฟ
  3. login ใหม่อีกรอบ จะเห็นเมนู Tools -> Network ก็จัดการต่อได้เลย
    เลือก Sub domain แล้ว Install
  4. สร้าง wp-content/blogs.dir ไว้ด้วย chmod 777 ก็ดีเพื่อให้ www-data เขียนได้
  5. ลอก code ไปแปะ wp-config.php กับ .htaccess
    ถ้ายังไม่ได้ enable mod_rewrite สำหรับ debian ก็สั่ง a2enmod rewrite แล้ว restart จบ
  6. login ใหม่เป็น network admin ไป Settings -> Network Settings
    กด Logged in users may register new sites. เพื่อไม่ให้ชาวบ้านมาใช้
    แล้วก็ uncheck Registration Notification
 
mysql -u root -p
CREATE DATABASE name
CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost' WITH GRANT OPTION;
 

ขอจดไว้ก่อนเดี๋ยวลืม สเต็ปนี้ดัดแปลงมาจากของคุณพายุ

  1. list domain name ทั้งหมดไว้ใน editplus
  2. ใช้ regex replace ค้นหา ^(.*)$
  3. แล้วแทนที่ด้วย
    <VirtualHost *:80>
    DocumentRoot “/var/www/\1″
    ServerName \1
    <Directory “/var/www/\1″>
    allow from all
    Options +Indexes
    </Directory>
    </VirtualHost>
  4. save ไว้สมมติชื่อไฟล์ vhost1.conf
  5. นำไปวางไว้ที่ /etc/apache2/sites-avaliable/
  6. สร้าง ln -s ไปไว้ที่ /etc/apache2/sites-enable/
  7. อย่าลืมสร้าง dir ไว้ตาม conf file นั้นด้วย
  8. /etc/init.d/apache2 reload

มีจุดสังเกตว่า ยิ่ง conf file มีมากเท่าไหร่ เวลาที่ apache ใช้ในการ reload, start, restart ก็จะนานยิ่งขึ้น

 

เรียก Profile Manager โดยสั่งที่ Terminal

/Application/Firefox.app/Contents/MacOS/firefox-bin -Profilemanager & > /dev/null

ก็จะได้หน้าต่าง Profile Manager มา
ทีนี้ก็สร้าง Profile ได้ตามต้องการเลย

เพื่อให้ง่ายขึ้นก็สร้าง ffprofile.ssh ขึ้นมาใส่คำสั่งนั้นเข้าไป
แล้วก็ chmod 755 ffprofile.ssh

 

ช่วงก่อนที่เค้าจัดโปรฯ $0.99 มาคงสอยกันมาหลายคน ^_^
ลองใช้งานแล้วเค้าให้ใช้ FTP over SSH ได้แต่ SSH command line ไม่ได้ จะใช้ต้องจ่ายตัง
ก็คนมันงกนี่ ทำไงดีล่ะ วิธีแก้ปัญหาเฉพาะหน้าง่ายๆ ครับ
สร้าง file.php ขึ้นมาไฟล์นึงเอาไปวาง
แล้วก็เขียน

<?
exec(“command”);
?>

อยากสั่งไรบ้างล่ะ ใส่ไปเลยแค่นี้เอง โฮะ โฮะ