วันพฤหัสบดีที่ 26 เมษายน พ.ศ. 2555

ปรับแต่ง Apache2 บน Ubuntu ; )




    1. หากต้องการเปลี่ยนหรือเพิ่ม port  ให้แก้ไขแฟ้ม /etc/apache2/ports.conf เป็นประมาณตัวอย่างว่า
      Listen 80
      Listen 8010
    2. การสร้าง virtual host ให้แก้ไขแฟ้ม /etc/apache2/sites-available/default เป็นประมาณว่า
      <VirtualHost *:80>
      DocumentRoot /var/www/
      ServerName origin.hostname.domain
      </VirtualHost>
      *** ข้างบนนี้ต้องมีเพื่อให้คงชื่อ web host ของเดิมไว้

      <VirtualHost *:80>
      DocumentRoot /var/www/newfile
      ServerName new.name.domain
      </VirtualHost>
      *** เพิ่มชื่อ web host ใหม่เข้าไป

      <VirtualHost *:80>
      ServerName www.mydomain.com
      Redirect / http://new.domain.com/
      </VirtualHost>
      *** ทำการ redirect ต่อไปให้เวบอื่น

      ต้องแก้ไขแฟ้ม /etc/apache2/sites-available/default
      ให้ส่วนของ <Directory /var/www/> บริวเณประมาณบรรทัดที่ 14
      ต้องอนุญาติให้ AllowOverride All ดังตัวอย่าง
      <Directory /var/www/>
               Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
       </Directory>

      เสร็จแล้วก็สั่ง apache ทำงานใหม่ ด้วยคำสั่ง sudo /etc/init.d/apache2 force-reload
    3. การสร้าง virtual host ที่เป็น https ทำดังนี้
      สั่งเปิด ssl ด้วยคำสั่ง sudo a2enmod ssl
      ดาวน์โหลดแฟ้มจาก ftp://ftp.psu.ac.th/pub/apache/apache2-ssl.tar.gz
      ด้วยคำสั่ง wget ftp://ftp.psu.ac.th/pub/apache/apache2-ssl.tar.gz
      แล้วแตกแฟ้มออกมาด้วยคำสั่ง  tar -zxvf apache2-ssl.tar.gz -C /tmp
      คัดลอกแฟ้มไปยังตำแหน่งที่ถูกต้องด้วยคำสั่ง
      sudo mv /tmp/ssleay.cnf /usr/share/apache2
      sudo mv /tmp/apache2-ssl-certificate /usr/sbin
      sudo mkdir -p  /etc/apache2/ssl

      สร้าง certification ด้วยคำสั่ง sudo apache2-ssl-certificate
      ระบบจะมีข้อความออกให้โต้ตอบ ก็ให้กดแป้น Enter อย่างเดียวจนเสร็จ

      แก้ไขแฟ้ม /etc/apache2/sites-available/default
      เพิ่มบรรทัดว่า NameVirtualHost *:443 เข้าไป
      ถัดต่อจากบรรทัดเดิมที่ว่า NameVirtualHost *:80
      แล้วสร้างเพิ่ม tag ทำนองเดียวกับ <VirtualHost *:80>
      แต่เปลี่ยนจากเลข 80 เป็นเลข 443 และเพิ่ม SSL ประมาณว่า
      <VirtualHost *:443>
       ......
      SSLEngine on
      SSLCertificateFile /etc/apache2/ssl/apache.pem
      </VirtualHost>
      เสร็จแล้วก็ให้ restart apache ใหม่ด้วยคำสั่ง  sudo /etc/init.d/apache2 force-reload
    4. การทำให้ www server ไม่แสดงผลรายการชื่อแฟ้มใน directory
      ให้แก้ไขแฟ้ม /etc/apache2/sites-available/default
      ประมาณบรรที่ 14 ให้ลบคำว่า Indexes ออกจากส่วนของ
      <Directory "/var/www/l">
      ....
      </Directory>
      จากตัวอย่างข้อความเดิมคือ Options Indexes FollowSymLinks
      แก้ไขใหม่เป็น    Options FollowSymLinks

      แล้วสั่งให้ apache ทำงานใหม่ด้วยคำสั่ง  sudo /etc/init.d/apache2 force-reload
      /etc/apache2/httpd.conf
    5. หากต้องการบริการจำนวน client มากกว่าเดิม  กลายเป็น 500 connection
      ต้องตรวจสอบว่า apache มีการจัดการ process แบบใด ให้ใช้คำสั่ง  apache2 -l
      ถ้ามีข้อความคำตอบ prefork.c แสดงว่าจัดการ process แบบ MPM prefork
      ถ้ามีข้อความคำตอบ worker.c แสดงว่าจัดการ process แบบ MPM worker
      ให้แก้ไขที่แฟ้ม  /etc/apache2/apache2.conf ที่ประมาณข้อความว่า

      หากเป็นแบบ MPM prefork ให้แก้ไขดังนี้ ที่ประมาณข้อความว่า
      <IfModule mpm_prefork_module>
          StartServers          5
          MinSpareServers       5
          MaxSpareServers      10
          MaxClients          150
          MaxRequestsPerChild   0
      </IfModule>/etc/apache2/httpd.conf
      ให้แก้ใขค่า MaxClients และเพิ่มค่า ServerLimit  เป็น 500 ดังตัวอย่าง
      <IfModule mpm_prefork_module>
          StartServers          5
          MinSpareServers       5
          MaxSpareServers      10
          ServerLimit         500
          MaxClients          500
          MaxRequestsPerChild   0
      </IfModule>

      หากเป็นแบบ MPM worker ที่ประมาณข้อความว่า
      <IfModule mpm_worker_module>/etc/apache2/httpd.conf
          StartServers          2
          MinSpareThreads      25
          MaxSpareThreads      75
          ThreadLimit          64
          ThreadsPerChild      25
          MaxClients          150
          MaxRequestsPerChild   0
      </IfModule>
      ให้ แก้ใขค่า MaxClients เป็น 500 และเพิ่มค่า ServerLimit  เป็น 20
      หมายเหตุ. MaxClients = ServerLimit x ThreadsPerChild ดังตัวอย่าง
      <IfModule mpm_worker_module>
          StartServers          2
          MinSpareThreads      25
          MaxSpareThreads      75
          ThreadLimit          64
          ThreadsPerChild      25
          ServerLimit 20/etc/apache2/httpd.conf
          MaxClients          500
      #    MaxClients          150
          MaxRequestsPerChild   0
      </IfModule>

      เสร็จแล้วสั่งให้ระบบทำงานใหม่ด้วยคำสั่ง  sudo /etc/init.d/apache2 force-reload
    6. ตั้งค่าให้เวบแสดงผลภาษาไทยแบบ utf-8 โดยอัตโนมัติ
      ให้แก้ไขแฟ้ม /etc/apache2/conf.d/charset
      ตั้งค่าตัวแปรเป็นว่า AddDefaultCharset UTF-8
      เสร็จแล้วสั่งให้ระบบทำงานใหม่ด้วยคำสั่ง  sudo /etc/init.d/apache2 force-reload
  • อ่านทั้งหมด http://opensource.cc.psu.ac.th/%E0%B8%95%E0%B8%B4%E0%B8%94%E0%B8%95%E0%B8%B1%E0%B9%89%E0%B8%87_apache_%E0%B8%9A%E0%B8%99_ubuntu
  • วันพุธที่ 25 เมษายน พ.ศ. 2555

    Dump .SQL file

     ให้ไปที่ Path ของไฟ masterdump.sql แล้ว Dump ได้เลย
    #  mysql -u root -p < masterdump.sql

    วันศุกร์ที่ 6 เมษายน พ.ศ. 2555

    วันพฤหัสบดีที่ 15 ธันวาคม พ.ศ. 2554

    Reset password root ใน mysql ของ CentOS

    Reset password root ใน mysql ของ CentOS  

    จดเอาไว้กันลืม สำหรับการ Restart Password ของ mysqld เวลาลงครับ
    1. ให้หยุดการทำงานของ mysql ก่อน
    # service mysqld stop
    2. ให้ Start MySQL เป็น save mode. โดยคำสั่ง
    # mysqld_safe --skip-grant-tables &
    3. ต่อไปก็ให้ Login  MySQL โดย user root
    # mysql -u root
    4. ทำการ Update password root (ที่ขีดเส้นใต้คือให้ใส่รหัสใหม่ลงไป)
    mysql> use mysql;
    mysql> update user set password=PASSWORD("NEW PASSWORD") where user='root';
    mysql> flush privileges;
    mysql> quit;
    5. แล้วก็ restart service ของ mysql ซะ เป็นอันเรียบร้อย
    # service mysqld restart
    6. แล้วลองเข้าใหม่ดูครับ
    # mysql -u root -p
    7.พอเข้าได้แล้ว ก็ไปเข้าของ phpmyadmin เอาด้วย ก็น่าจะเข้าได้เช่นกันครับ

    วันพุธที่ 2 พฤศจิกายน พ.ศ. 2554

    HOW TO ADD [DAG] ON CENTOS 5 2/11/2011 :)

    # Insert This Command at /etc/yum.repos.d/CentOS-Base.repo


    [dag]
    name=Dag RPM Repository for Red Hat Enterprise Linux
    baseurl=http://ftp.heanet.ie/pub/freshrpms/pub/dag/redhat/el5/en/i386/dag/
    gpgcheck=1
    enabled=1

    // Save And Exit

    #yum claen all
    #yum list all
    #yum update

    Hav a fun :)