แสดงบทความที่มีป้ายกำกับ Appserv แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ Appserv แสดงบทความทั้งหมด

วันศุกร์ที่ 17 พฤษภาคม พ.ศ. 2556

Start Service Apache ไม่ได้

  ที่มา http://roboticlab.blogspot.com/2012/04/start-service-apache.html

       ก่อนอื่นๆ ก็เนื่องจากมีเพื่อนมาถามเยอะมาก และก็บ่นกันบ่อย โดยเฉพาะตอนเรียนวิชาเว็บ หรือเกิดอยากจะทำเว็บขึ้นมาแต่พอไปรัน Service ของ Apache แล้วเกิดปัญหาขึ้น
XAMPP apache port problem 80 or 443
ถึง ณ จุดนี้ัแล้ว ผมก็จะของนำเสนอวิธีแบบตรงจุด ไม่ต้องมาสุ่มไล่ลบโปรแกรมตามที่ในลายๆเว็บเค้าแนะนำกัน จากจุดนี้เราทราบว่า Port  80 หรือ 443 มีปัญหาเรามีวิธีง่ายๆ

1.ตรวจสอบโปรแกรมที่ใช้่ Port ชนกัน

  • Start >> พิมพ์คำสั่ง cmd ขึ้นมา 
  • พิมพ์คำสั่ง netstat -o -n -a | findstr 0.0:80 หรือ netstat -o -n -a | findstr 0.0:443 เพือตรวจสอบ Port ที่ใช้งาน โดยที่เลข  80 กับ 443 คือ Port สามารถที่จะปรับเปลี่ยนได้ตามความเหมาะสมจ้า
  • เราก็จะพบว่ามี  1 Process ที่เกี่ยวข้อง โดยเราจะมาสนใจที่เลข 1044
  • เลข 1044 คือ เลข PID คือ หมายเลขของ Process โดยเราจะไปตรวจดูต่อว่าเลขนี้ เป็นของอะไร โดยการเปิด Task Manager ขึ้นมา จากนั้นไปที่เมนู View >> Select Column เพื่อไปเลือกให้แสดงค่า PID ออกมาจากนั้นเราก็ไล่หา จะพบว่าเป็นของ VMWARE

2.จะแก้ไขอย่างไร 

          จากจุดนี้เราก็ทราบแล้วว่าจะแก้ปัญหาอย่างไร ถ้าเป็นโปรแกรมอื่น เช่น Skype เราอาจจะไปปรับ option ของโปรแกรม แต่ในกรณีนี้เป็นของ VMWARE ซึ่งเราก็กลัวว่าถ้าแก้แล้ว จะมีปัญหากับ Host ที่รันอยู่ในระบบ หรือ ไม่ ผมก็เลยจะเปลี่ยน Port ของทาง Apache แทน แต่จะเขียนรวมไปถึง Mysql ด้วยโดยจะยกตัวอย่างจาก xampp
  • การเปลี่ยน Port 80 (Http) ใน Apache
    1. เปิดไฟล์ \xampp\apache\conf\httpd.conf
    2. หาคำว่า “Listen 80″ เปลี่ยนเป็น “Listen 8080″
    3. หาคำว่า “ServerName localhost:80″ เปลี่ยนเป็น “ServerName localhost:8080″
  • การเปลี่ยน Port 443 (Https) ใน Apache
    1. เปิดไฟล์ \xampp\apache\conf\extra\httpd-ssl.conf
    2. หาคำว่า “Listen 443″ เปลี่ยนเป็น “Listen 450″
    3. หาคำว่า “ServerName localhost:443″ เปลี่ยนเป็น “ServerName  localhost:450″
  • การเปลี่ยน Port 3306 ของ Mysql
    1. เปิดไฟล์ \xampp\mysql\bin\my 
    2. หาคำว่า “port = 3306″ เปลี่ยนเป็น “port = 3336″ (มีสองจุด)

appserv 2.5.10 บน OS Windows 7 (64 bit) แล้วเข้า localhost ไม่ได้

1.ลองตรวจสอบ ว่า service apache start หรือไม่ครับ
ถ้า start ปกติ ลองเรียกเป็นแบบ ip ดูว่าได้หรือไม่นะครับ. http://127.0.0.1
ลองตรวจสอบเรื่อง program ที่ใช้งาน ว่ามีการใช้งานบน port 80 อยู่แล้วหรือไม่
เช่นพวก iis หรือตรวจสอบที่เครื่อง app server ว่ามีการลง firewall หรือ av ที่มี firewall
ไป block หรือไม่ครับ

2.ปกติแล้ว Windows 7 นั้นจะไม่ได้เปิด ให้ใช้ localhost ไว้ที่ host file หน่ะครับ เราต้องไปเอา comment ออกก่อน เข้าไปเชค DocumentRoot ที่ไฟล์ config ของ Apache ดู

C:\AppServ\Apache2.2\conf\httpd.conf

ว่าอยู่ที่ C:/AppServ/www
และเชค ServerName


#
# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
ServerName localhost:80

#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "C:/AppServ/www"


 


ปล.ถ้าไม่ได้จริงๆ  โทรหาผม วีระพงษ์ 086-6451435

ติดตั้ง Appserv แล้วเข้าหน้า localhost หรือ 127.0.0.1 ไม่ได้

ปัญหาเกิดจาก ติดตั้ง Appserv แล้วเข้าหน้า localhost หรือ 127.0.0.1 ไม่ได้ เลยงงอยู่พักใหญ่ นั่งหาข้อมูลจากพี่ Google ได้ความว่า อาจมีโปรแกรมอื่นใช้ port 80 อยู่ สำหรับวิธีตรวจสอบว่าโปรแกรมใหนใช้งาน port 80 เปิด cmd ขึ้นมาแล้วพิมพ์ว่า netstat -o -n -a | findstr 0.0:80 มันก็จะขึ้นบอกไว้อันสุดท้ายว่า pid อะไรที่ใช้ พอร์ตนี้อยู่นะครับ
จาก นั้นเราก็เปิด Task manager ขึ้นมา แล้วเปิดแทบ Processes จากนั้นคลิ๊กไปที่เมนู View แล้วเลือก Select Colum แล้วเลือกให้มันแสดง PID ด้วย  จากนั้นเราก็หาใน List ได้เลยว่า PID ที่เราได้จากตอนแรกนั้นตรงกับ Process ของโปรแกรมอะไร
อ่านบทความเต็มๆได้ที่ http://smokietorphp.d-ja.com/archives/145

วันอาทิตย์ที่ 10 กุมภาพันธ์ พ.ศ. 2556

ปัญหา Webserver ขึ้น This site is running TeamViewer Port 80

ปัญหาเกิดหลังจากติดตั้ง appserv โดยที่ก่อนหน้านั้นติดตั้ง TeamViewer 

(จะเป็นกับ TeamViewer เวอร์ชั่น 5.1 เป็นต้นไป 5.0 ก็เป็นนะ...)


เมื่อเปิดเว็บเรียก? http://localhost/ ปกติจะเห็นเป็นหน้าแรกของ Apache หรือ Xampp ถ้าติดตั้ง Webserver ด้วย xampp

ปัญหาคือ เพราะ Port 80 หรือ 443 ถ้าเป็น https ถูก TeamViewer เอาไปใช้ซะก่อน apache ของเราทำให้ apache start ไม่ได้

และ ถ้าเข้า http://localhost/ ก็จะได้ หน้าของ TeamViewer แทน

มาดูวิธีแก้ไขกันดีกว่าครับ

1.เปลี่ยน port ของ apache ไปใช้ port อื่น (วิธีนี้ไม่แนะนำครับ)

2.หาทางป้องกันไม่ให้ TeamViewer ใช้ port 80 (แนะนำวิธีนี้)

วิธีให้เข้าไปที่ TeamViewer

ไปที่ Extras >> Option >> เลือกเมนู Advanced >> คลิก Show advanced options

เลือก

Don?t use incoming port 80 หรือ Don't use incoming ports 80 and 443 สำหรับ TeamViewer เวอร์ัชั่น 6

เท่านี้ก็เสร็จ ครับ แก้ปัญหาได้แล้ว

แต่สำหรับ TeamViewer 5.0 ที่เจอปัญหานี้ จะไม่สามารถทำตามบทความนี้ได้นะครับ ที่มา http://www.mindphp.com/%E0%B8%9A%E0%B8%97%E0%B8%84%E0%B8%A7%E0%B8%B2%E0%B8%A1/66-server-hosting/1947-%E0%B8%9B%E0%B8%B1%E0%B8%8D%E0%B8%AB%E0%B8%B2-webserver-%E0%B8%82%E0%B8%B6%E0%B9%89%E0%B8%99-this-site-is-running-teamviewer-port-80.html