Topic List
เว็บไซท์ http://irrigation.rid.go.th/rid16/ranode มีปัญหามาหลายวันแล้ว วันนี้เลยลองหาทางแก้ไขดู
ปัญหา
Charactor Encoding ผิดพลาด
ใน HTML Code มี meta http-equiv="Content-Type" content="text/html; charset=utf-8" แต่ในเมนู View/Charactor Encoding ยังคงเป็น iso-8859-11 อยู่ ทำให้แสดงภาษาไทยผิดพลาด
ตรวจสอบใน phpinfo ปรากฎว่าใน HTTP Response Headers มีค่า Content-Type เป็น text/html; charset=iso-8859-11 ไม่ยอมเปลี่ยนเป็น utf-8 ตาม meta http-equiv="Content-Type"
วิธีแก้ไข
มีอยู่ 3 จุด (เท่าที่คิดได้) คือ
- เพิ่มคำสั่งในไฟล์ .htaccess
AddDefaultCharset utf-8
- เพิ่มคำสั่งในไฟล์ index.php
iniset('defaultcharset', 'utf-8');
- เพิ่มคำสั่งในไฟล์ index.php
header('Content-Type: text/html;charset=UTF-8');
ที่ทำแล้วได้ผลคือเพิ่มคำสั่งข้างล่างนี้ในไฟล์ index.php
header('Content-Type: text/html;charset=UTF-8');
ติดตั้ง Ubuntu Desktop ให้เป็น Server (LAMP)
Install Apache
#sudo apt-get install apache2
Enable mod_rewrite
#sudo a2enmod rewrite
เปลี่ยน DocumentRoot ของ apache เป็น folder อื่น และเปิดใช้งาน clean url
#gksudo gedit /etc/apache2/sites-available/default
- เปลี่ยนบรรทัด /var/www/ เป็น /my web folder/ จำนวน 2 ตำแหน่ง
- แก้ค่า AllowOverride ของ /my web folder/ จาก None เป็น AllowOverride All
Install PHP
<a class="hashtag" href="/tags/sudo">#sudo</a> apt-get install php5 libapache2-mod-php5 php5-gd <a class="hashtag" href="/tags/sudo">#sudo</a> /etc/init.d/apache2 restart
Install MySQL
<a class="hashtag" href="/tags/sudo">#sudo</a> apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql phpmyadmin <a class="hashtag" href="/tags/gksudo">#gksudo</a> gedit /etc/php5/apache2/php.ini
add this line extension=mysql.so
#sudo /etc/init.d/apache2 restart
หากมีข้อมูลเก่าของ mysql ก็สามารถ copy มาไว้ที่ /var/lib/mysql แล้ว โดยใช้คำสั่ง
<a class="hashtag" href="/tags/sudo">#sudo</a> cp /media/disk/var/lib/mysql/* /var/lib/mysql/ <a class="hashtag" href="/tags/sudo">#sudo</a> chown -hR mysql /var/lib/mysql/* <a class="hashtag" href="/tags/sudo">#sudo</a> chgrp -hR mysql /var/lib/mysql/*
ทางทีดีคือไปอ่านรายละเอียดจากเว็บต้นฉบับดีกว่าครับ ที่ Installing LAMP On Ubuntu For Newbies
Or from howtoforge.com
#sudo apt-get install apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert
<a class="hashtag" href="/tags/sudo">#sudo</a> apt-get install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-json php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
ติดตั้ง Tahoma font
ถึงยังไงผมก็ยังชอบฟอนท์ Tahoma ของ Windows อยู่ดี ก็เลยต้องหาวิธีติดตั้งฟอนท์ Tahoma บน Ubuntu
เจอบทความ Adding Windows fonts in Linux ทดลองดูแล้ว It's work เลยเอาลิงก์มาเก็บไว้ก่อน
วิธีที่ผมใช้ง่ายนิดเดียว คือ copy fonts Tahoma จาก Windows/Fonts มาใว้ใน folder ./fonts ของ home folder
แล้วก็ทำการติดตั้งฟอนต์ทดแทน เพื่อแก้ปัญหาสระเยื้องใน OOo
ติดตั้ง Extensions ของ Firefox ที่ใช้ประจำ คือ CollorZilla , Download Statusbar , DownThemAll , Firebug , FireGestures , NoScript , ShowIP , Xmarks
Install FileZilla
#sudo apt-get install filezilla
Install thunderbird
#sudo apt-get install thunderbird
Install Geany editor
#sudo apt-get install geany
Upgrade OOo.org 2.3.0
#sudo gedit /etc/apt/sources.list
add 2 lines
deb http://download.thaigrid.or.th/pub/ubuntu/contrib gutsy openoffice.org deb-src http://download.thaigrid.or.th/pub/ubuntu/contrib gutsy openoffice.org
<a class="hashtag" href="/tags/sudo">#sudo</a> apt-get update <a class="hashtag" href="/tags/sudo">#sudo</a> apt-get install openoffice.org
NAS200
Mounting SMB Shares Network share permanently mount samba share
Add this line to file /etc/init.d/module-init-tools
#for Aircard 580 modprobe usbserial vendor=0x1199 product=0x0122 mknod /dev/ttyUSB5 c 188 0 # mount NAS200 modprobe smbfs mkdir /media/nas200
Manual mount nas200 to /media/nas200 is
#sudo mount -t smbfs //192.168.1.2/ /media/nas200 -o username=myusername,password=mypassword,uid=1000,mask=000,iocharset=utf8
Make AirCard button on panel
- Right click on panel -> Add to panel
- Select Custom Application Launcher
- Command : xterm -T "Connect to CDMA" -e pppd call cdma
1.you must enable mod_rewrite module by remove # before this line in httpd.conf
# Enable mod_rewrite LoadModule rewrite_module modules/mod_rewrite.so
2.set apache to allow .htaccess file by change value AllowOverride to All
# AllowOverride controls what directives may be placed in .htaccess files. AllowOverride All
3.and restart Apache
clean url หมายถึงการอ้างถึง url โดยมีลักษณะเหมือนเป็น folder ซึ่ง folder ดังกล่าวไม่ได้มีอยู่จริงใน host ก็จะเกิด error 404
ให้กำหนดชื่อไฟล์ที่ server จะทำการ redirect เมื่อเกิด error 404 มาที่โปรแกรมหลัก ทุกครั้งที่มีการอ้างอิงถึง clean url ก็จะมาที่โปรแกรมหลักของเราเสมอ ในโปรแกรมหลักก็จะตรวจสอบเจ้า folder ที่ส่งมา แล้วทำงานตามที่ได้ตั้งข้อกำหนดเอาไว้
การกำหนด error 404 ได้ในไฟล .htaccess ดังนี้
## Apache/PHP/CMS settings
Customized error messages.
ErrorDocument 404 /index.php
หรือการกำหนดให้ Apache redirect page เมื่อหา page นั้นไม่เจอ
you must enable mod_rewrite module by remove # before this line in httpd.conf
# Enable mod_rewrite
LoadModule rewrite_module modules/mod_rewrite.so
- set apache to allow .htaccess file by change value AllowOverride to All
# AllowOverride controls what directives may be placed in .htaccess files. AllowOverride All
- and restart Apache
ดังนั้นทุกครั้งที่เรียกมา ก็จะถูกย้ายไปสู่ index.php