การติดตั้งโปรแกรม Apache ใน LINUX



นอกจากนี้คุณยังจะต้องมีการติดตั้งโปรแกรม Apache เพื่อที่จะทำงานผ่านขั้นตอนเหล่านี้ หากคุณยังไม่ได้ทำเช่นนั้นคุณจะได้รับอาปาเช่ติดตั้งบนเซิร์ฟเวอร์ของคุณผ่านทาง apt-get

sudo apt-get update
sudo apt-get install apache2

หลังจากขั้นตอนเหล่านี้จะเสร็จสมบูรณ์เราสามารถเริ่มต้นได้

สำหรับวัตถุประสงค์ของคู่มือนี้, การตั้งค่าของฉันจะทำโฮสต์เสมือน example.com และ test.com จะถูกอ้างอิงคู่มือตลอด แต่คุณควรใช้โดเมนของคุณเองในขณะที่ตั้งค่าไปพร้อมกัน

เราจะแสดงวิธีการแก้ไขโฮสต์ท้องถิ่นของคุณยื่นภายหลังการทดสอบการตั้งค่าหากคุณใช้ค่าหุ่น นี้จะช่วยให้คุณสามารถทดสอบการตั้งค่าของคุณจากคอมพิวเตอร์ที่บ้านของคุณแม้ว่าเนื้อหาของคุณจะไม่สามารถใช้ได้ผ่านชื่อโดเมนที่จะเข้าชมอื่น ๆ

Step One — Create the Directory Structure

ขั้นตอนแรกที่เราจะไปใช้เวลาที่จะทำให้โครงสร้างไดเรกทอรีที่จะเก็บข้อมูลเว็บไซต์ที่เราจะให้บริการกับผู้เข้าชม

document root ของเรา (ไดเรกทอรีระดับบนสุดที่ Apache มีลักษณะที่จะหาเนื้อหาที่จะให้บริการ) จะถูกกำหนดให้แต่ละภายใต้ไดเรกทอรี / var / www ไดเรกทอรี เราจะสร้างไดเรกทอรีที่นี่สำหรับทั้งสองของโฮสต์เสมือนเราวางแผนในการทำ

ภายในแต่ละไดเรกทอรีเหล่านี้เราจะสร้างไฟล์ public_html ที่จะเก็บไฟล์ที่แท้จริงของเรา นี้จะช่วยให้เรามีความยืดหยุ่นในการโฮสติ้งของเราบางส่วน

ยกตัวอย่างเช่นสำหรับเว็บไซต์ของเราที่เรากำลังจะทำให้ไดเรกทอรีของเราเช่นนี้

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/test.com/public_html

ส่วนสีแดงเป็นตัวแทนของชื่อโดเมนที่เราต้องการที่จะให้บริการจาก VPS ของเรา

Step Two — Grant Permissions

ตอนนี้เรามีโครงสร้างไดเรกทอรีสำหรับไฟล์ของเรา แต่พวกเขาจะเป็นของผู้ใช้รากของเรา ถ้าเราต้องการให้ผู้ใช้ของเราอย่างสม่ำเสมอเพื่อให้สามารถแก้ไขไฟล์ในไดเรกทอรีเว็บของเราเราสามารถเปลี่ยนความเป็นเจ้าของโดยการทำเช่นนี้:

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/test.com/public_html

ตัวแปร"$ USER" จะใช้ค่าของผู้ใช้ที่คุณกำลังเข้าเมื่อคุณกดปุ่ม "ENTER" โดยทำเช่นนี้ผู้ใช้ปกติของเราตอนนี้เป็นเจ้าของไดเรกทอรีย่อย public_html ที่เราจะได้รับการจัดเก็บเนื้อหาของเรา

เราควรปรับเปลี่ยนสิทธิ์ของเรานิด ๆ หน่อย ๆ เพื่อให้เข้าถึงการอ่านที่ได้รับอนุญาตให้สารบบเว็บทั่วไปและทั้งหมดของไฟล์และโฟลเดอร์ที่มีเพื่อให้หน้าสามารถให้บริการได้อย่างถูกต้อง:

sudo chmod -R 755 /var/www

เว็บเซิร์ฟเวอร์ของคุณควรมีสิทธิ์ที่จะต้องมีการให้บริการเนื้อหาและผู้ใช้ของคุณควรจะสามารถที่จะสร้างเนื้อหาภายในโฟลเดอร์ที่จำเป็น

Step Three — Create Demo Pages for Each Virtual Host

เรามีโครงสร้างไดเรกทอรีของเราในสถานที่ ขอสร้างเนื้อหาบางส่วนที่จะให้บริการ

เราเพียงแค่ไปสำหรับการสาธิตเพื่อให้หน้าของเราจะง่ายมาก เราเพียงแค่จะทำให้หน้า index.html สำหรับแต่ละเว็บไซต์

เริ่มต้นให้กับ example.com เราสามารถเปิดไฟล์ index.html ในการแก้ไขของเราโดยการพิมพ์:

nano /var/www/example.com/public_html/index.html

ในแฟ้มนี้สร้างเอกสาร HTML ง่ายๆที่บ่งชี้ว่าเว็บไซต์ที่เชื่อมต่อกับ ไฟล์ของฉันมีลักษณะเช่นนี้

<html>
  <head>
    <title>Welcome to Example.com!</title>
  </head>
  <body>
    <h1>Success!  The example.com virtual host is working!</h1>
  </body>
</html>

บันทึกและปิดแฟ้มเมื่อคุณเสร็จสิ้น

เราสามารถคัดลอกแฟ้มนี้เพื่อใช้เป็นพื้นฐานสำหรับเว็บไซต์ที่สองของเราโดยการพิมพ์:

cp /var/www/example.com/public_html/index.html /var/www/test.com/public_html/index.html

จากนั้นเราจะสามารถเปิดไฟล์และปรับเปลี่ยนชิ้นส่วนที่เกี่ยวข้องของข้อมูล:

nano /var/www/test.com/public_html/index.html

<html>
  <head>
    <title>Welcome to Test.com!</title>
  </head>
  <body>
    <h1>Success!  The test.com virtual host is working!</h1>
  </body>
</html>

บันทึกและปิดไฟล์นี้ได้เป็นอย่างดี ขณะนี้คุณมีหน้าเว็บที่จำเป็นในการทดสอบการกำหนดค่าโฮสต์เสมือน

Step Four — Create New Virtual Host Files

ไฟล์โฮสต์เสมือนเป็นไฟล์ที่ระบุกำหนดค่าที่แท้จริงของโฮสต์ที่เสมือนจริงของเราและกำหนดวิธีการ Apache เว็บเซิร์ฟเวอร์จะตอบสนองต่อการร้องขอของโดเมนต่างๆ

Apacheมาพร้อมกับไฟล์โฮสต์เสมือนเริ่มต้นที่เรียกว่า 000-default.conf ที่เราสามารถใช้เป็นจุดกระโดดออก พวกเราจะไปคัดลอกไปสร้างไฟล์โฮสต์เสมือนสำหรับแต่ละโดเมนของเรา

เราจะเริ่มต้นด้วยการเป็นหนึ่งในโดเมนกำหนดค่าคัดลอกสำหรับโดเมนที่สองของเราแล้วทำการปรับเปลี่ยนต่อไปในไม่กี่คนที่จำเป็นเริ่มต้นการตั้งค่า Ubuntu ต้องว่าไฟล์โฮสต์เสมือนแต่ละสิ้นสุดใน .conf

Create the First Virtual Host File
เริ่มต้นด้วยการคัดลอกไฟล์สำหรับโดเมนแรก:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf

เปิดแฟ้มใหม่ในการแก้ไขของคุณด้วยสิทธิ์ root:

sudo nano /etc/apache2/sites-available/example.com.conf

ไฟล์จะมีลักษณะบางอย่างเช่นนี้ (ผมได้ลบความคิดเห็นที่นี่เพื่อให้เข้าถึงไฟล์เพิ่มเติม):

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

ในขณะที่คุณสามารถดูมีไม่มากที่นี่ เราจะกำหนดรายการที่นี่สำหรับโดเมนแรกของเราและเพิ่มคำสั่งเพิ่มเติม ในส่วนนี้จะตรงกับโฮสต์เสมือนการร้องขอใด ๆ ที่จะทำในพอร์ต 80 พอร์ต HTTP เริ่มต้น

อันดับแรกเราต้องมีการเปลี่ยนแปลงคำสั่ง ServerAdmin ไปยังอีเมลที่ผู้ดูแลเว็บไซต์สามารถรับอีเมลผ่าน

ServerAdmin admin@example.com

หลังจากนี้เราต้องเพิ่มสองคำสั่งครั้งแรกที่เรียกว่า Servername โดยกำหนดโดเมนฐานที่ควรจะตรงกับคำนิยามสำหรับโฮสต์เสมือนนี้ นี้มักจะเป็นโดเมนของคุณที่สองเรียกว่า ServerAlias กำหนดชื่อต่อไปว่าควรจะตรงกับราวกับว่าพวกเขาชื่อฐาน นี้จะเป็นประโยชน์สำหรับการจับคู่เจ้าภาพคุณกำหนดไว้เช่น www:

ServerName example.com
ServerAlias www.example.com

สิ่งอื่น ๆ เพียง แต่เราต้องเปลี่ยนไฟล์โฮสต์เสมือนพื้นฐานเป็นที่ตั้งของรากเอกสารสำหรับโดเมนนี้ แล้วเราได้สร้างไดเรกทอรีที่เราต้องการดังนั้นเราก็ต้องปรับเปลี่ยนคำสั่ง DocumentRoot เพื่อสะท้อนให้เห็นไดเรกทอรีที่เราได้สร้าง:

DocumentRoot /var/www/example.com/public_html

รวมไฟล์ virtualhost ของเราควรมีลักษณะเช่นนี้

<VirtualHost *:80>
    ServerAdmin admin@example.com
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

บันทึกและปิดไฟล์

Copy First Virtual Host and Customize for Second Domain

ตอนนี้เรามีไฟล์โฮสต์เสมือนของเราก่อตั้งขึ้นครั้งแรกเราสามารถสร้างคนที่สองของเราโดยการคัดลอกไฟล์และปรับได้ตามต้องการ

เริ่มต้นด้วยการคัดลอก:

sudo cp /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-available/test.com.conf

เปิดแฟ้มใหม่ที่มีสิทธิ์ root ในการแก้ไขของคุณ:

sudo nano /etc/apache2/sites-available/test.com.conf

ขณะนี้คุณจำเป็นต้องปรับเปลี่ยนทุกชิ้นของข้อมูลที่อ้างอิงโดเมนที่สองของคุณ เมื่อเสร็จแล้วก็อาจจะมีลักษณะบางอย่างเช่นนี้

<VirtualHost *:80>
    ServerAdmin admin@test.com
    ServerName test.com
    ServerAlias www.test.com
    DocumentRoot /var/www/test.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

บันทึกและปิดแฟ้มเมื่อคุณเสร็จสิ้น

Step Five — Enable the New Virtual Host Files

ตอนนี้ที่เราได้สร้างไฟล์โฮสต์ของเราเสมือนเราจะต้องช่วยให้พวกเขา Apacheรวมถึงเครื่องมือบางอย่างที่ช่วยให้เราสามารถทำเช่นนี้

เราสามารถใช้เครื่องมือ a2ensite การเปิดใช้งานแต่ละเว็บไซต์ของเราเช่นนี้

sudo a2ensite example.com.conf
sudo a2ensite test.com.conf

เมื่อเสร็จแล้วคุณจะต้องเริ่มต้นใหม่ Apache เพื่อให้การเปลี่ยนแปลงเหล่านี้มีผลบังคับใช้:

sudo service apache2 restart

คุณมักจะได้รับข้อความว่าสิ่งที่คล้ายกับ:

* Restarting web server apache2
 AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message

ข้อความนี้เป็นข้อความที่ไม่เป็นอันตรายที่ไม่ได้ส่งผลกระทบต่อเว็บไซต์ของเรา

Step Six — Set Up Local Hosts File (Optional)

ถ้าคุณยังไม่ได้ใช้ชื่อโดเมนที่เกิดขึ้นจริงที่คุณเป็นเจ้าของในการทดสอบขั้นตอนนี้และได้รับการใช้โดเมนตัวอย่างบางส่วน แต่คุณอย่างน้อยสามารถทดสอบการทำงานของกระบวนการนี้โดยการปรับเปลี่ยนชั่วคราวไฟล์โฮสต์ในคอมพิวเตอร์ของคุณ

นี้จะสกัดกั้นการร้องขอใด ๆ สำหรับโดเมนที่คุณกำหนดค่าและชี้ไปยังเซิร์ฟเวอร์ VPS ของคุณเช่นเดียวกับระบบ DNS จะทำอย่างไรถ้าคุณกำลังใช้โดเมนที่ลงทะเบียน นี้จะทำงานจากคอมพิวเตอร์ของคุณแม้ว่าและเป็นเพียงประโยชน์สำหรับวัตถุประสงค์ในการทดสอบ

ให้แน่ใจว่าคุณมีการดำเนินงานในคอมพิวเตอร์ของคุณสำหรับขั้นตอนเหล่านี้และไม่เซิร์ฟเวอร์ VPS ของคุณ คุณจะต้องทราบรหัสผ่านของผู้ดูแลระบบคอมพิวเตอร์หรืออื่น ๆ ที่เป็นสมาชิกของกลุ่มผู้บริหาร

ถ้าคุณอยู่ในเครื่องคอมพิวเตอร์ Mac หรือ Linux, แก้ไขไฟล์ท้องถิ่นของคุณกับสิทธิ์ของผู้ดูแลโดยการพิมพ์:

sudo nano /etc/hosts

ถ้าคุณอยู่ในเครื่อง Windows คุณสามารถหาคำแนะนำเกี่ยวกับการแก้ไขไฟล์โฮสต์ของคุณที่นี่
http://support.microsoft.com/kb/923947

รายละเอียดที่คุณต้องการที่จะเพิ่มเป็นที่อยู่ IP สาธารณะของเซิร์ฟเวอร์ VPS ของคุณตามด้วยโดเมนที่คุณต้องการที่จะใช้ในการเข้าถึง VPS

สำหรับโดเมนที่ผมใช้ในคู่มือนี้สมมติว่าที่อยู่ IP ของฉันคือ VPS 111.111.111.111 ผมสามารถเพิ่มบรรทัดต่อไปนี้ที่ด้านล่างของไฟล์โฮสต์ของฉัน:

127.0.0.1   localhost
127.0.1.1   guest-desktop
111.111.111.111 example.com
111.111.111.111 test.com

นี้จะนำการร้องขอใด ๆ สำหรับ example.com และ test.com ในคอมพิวเตอร์ของเราและส่งพวกเขาไปยังเซิร์ฟเวอร์ของเราที่ 111.111.111.111 นี่คือสิ่งที่เราต้องการถ้าเราไม่ได้เป็นเจ้าของโดเมนเหล่านี้เพื่อทดสอบโฮสต์เสมือนจริงของเรา

บันทึกและปิดไฟล์

Step Seven — Test your Results

ตอนนี้คุณมีโฮสต์เสมือนของคุณกำหนดค่าคุณสามารถทดสอบการติดตั้งได้อย่างง่ายดายโดยไปที่โดเมนที่คุณกำหนดค่าในเว็บเบราว์เซอร์ของคุณ:

http://example.com

คุณจะเห็นหน้าเว็บที่มีลักษณะเช่นนี้:

Success!  The example.com virtual host is working!

ในทำนองเดียวกันถ้าคุณสามารถเยี่ยมชมหน้าเว็บที่สองของคุณ:

http://test.com

คุณจะเห็นไฟล์ที่คุณสร้างขึ้นสำหรับเว็บไซต์ที่สองของคุณ:

Success!  The test.com virtual host is working!

หากทั้งสองของเว็บไซต์เหล่านี้ทำงานได้ดีที่คุณได้กำหนดค่าเรียบร้อยแล้วสองการเชื่อมต่อเสมือนบนเซิร์ฟเวอร์เดียวกัน

หากคุณตั้งค่าไฟล์โฮสต์คอมพิวเตอร์ที่บ้านของคุณคุณอาจต้องการที่จะลบบรรทัดที่คุณเพิ่มขณะที่คุณสอบว่าผลงานการตั้งค่าของคุณ ซึ่งจะช่วยป้องกันไฟล์โฮสต์ของคุณจากการที่เต็มไปด้วยรายการที่ไม่จำเป็นจริง

ถ้าคุณต้องการที่จะเข้าถึงระยะยาวนี้พิจารณาการจัดซื้อชื่อโดเมนสำหรับแต่ละเว็บไซต์ที่คุณต้องการและตั้งขึ้นเพื่อชี้ไปยังเซิร์ฟเวอร์ VPS ของคุณ

Conclusion

ถ้าคุณทำตามพร้อมตอนนี้คุณควรจะมีการจัดการเซิร์ฟเวอร์เดียวชื่อโดเมนที่สองแยก คุณสามารถเพิ่มกระบวนการนี้โดยทำตามขั้นตอนที่เราระบุไว้ข้างต้นจะทำให้โฮสต์เสมือนเพิ่มเติม

ไม่มีข้อ จำกัด เกี่ยวกับจำนวนซอฟแวร์ของชื่อโดเมนคือ Apache สามารถจัดการดังนั้นรู้สึกฟรีที่จะทำให้มากที่สุดเท่าที่เซิร์ฟเวอร์ของคุณมีความสามารถในการจัดการ

_____________________
Thank you
Justin Ellingwood
Apr 22, 2014

https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-14-04-lts

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

สรุปการพัฒนาการของ CPU intel

วิธีติดตั้ง PHP (5.6, 7.0 และ 7.1) เวอร์ชันต่างๆใน Ubuntu

CPU 80386