การเรียกใช้ชื่อ Domain หลายชื่อบน Server PHP
คู่มือนี้เรียบเรียงสำหรับ Ruk-Com PaaS หน้าจอและตัวเลือกอาจแตกต่างตามเวอร์ชันและสิทธิ์ของบัญชี
ตรวจสอบ Environment, Region, สิทธิ์บัญชี และสำรองค่าปัจจุบันก่อนดำเนินการกับระบบจริง
วัตถุประสงค์
บทความนี้อธิบายการเรียกใช้ชื่อ Domain หลายชื่อบน Server PHP บน Ruk-Com Cloud PaaS โดยจัดลำดับขั้นตอนและจุดตรวจสอบสำหรับการนำไปใช้งานจริง
ก่อนเริ่มดำเนินการ
- เข้าสู่ระบบด้วยบัญชีที่มีสิทธิ์จัดการ Environment ที่เกี่ยวข้อง
- ตรวจสอบชื่อ Environment, Region และ Resource เป้าหมายก่อนบันทึกการเปลี่ยนแปลง
- สำรองข้อมูลหรือกำหนดแผนย้อนกลับก่อนแก้ไขระบบ Production
การใช้หลาย Domain จะช่วยเพิ่มความสามารถในการใช้งาน ประสิทธิภาพและความสามารถในการปรับขนาดของ PHP Application อีกทั้งยังช่วยประหยัดค่าใช้จ่ายโดยไม่จำเป็นต้องตั้งค่า Instance แยกต่างหาก
ดังนั้นเรามาดูวิธีการรันหลาย Domain บน PHP Application Server เพื่อให้ Application ของคุณปรับขนาดได้และมีประสิทธิภาพมากขึ้น
1. เข้าสู่ระบบ Ruk-Com Cloud Dashboard
2. คลิกปุ่มEnvironment ใหม่ด้านบนซ้ายของ Dashboard
3. เมื่อหน้าต่างปรากฏให้เลือกที่แท็บ PHP เลือก Application Server และระบุจำนวน Resource ที่ Application ของคุณต้องการ หลังจากนั้นใส่ชื่อสำหรับการสร้าง environment และคลิกปุ่มสร้าง


4. คุณต้องมีชื่อใน DNS เพื่อแก้ไขที่อยู่ IP ของคุณ ดังนั้นการซื้อชื่อ Domain สำหรับ environment ของคุณสามารถทำได้สองวิธี: คือการเพิ่ม CNAME record หรือการตั้งค่า A Records คุณสามารถดูรายละเอียดเพิ่มเติมได้ที่นี่
5. หลังจากนั้นคลิกปุ่มการตั้งค่าที่ environment ของคุณและผูก Domain ตัวอย่างเช่น เราใช้ URL นี้: mydomain.com และ myseconddomain.com

6. ตอนนี้คุณสามารถอัปโหลด Packageซิปโดยไปที่ผู้จัดการฝ่าย Deployและ deploy environment ของคุณที่สร้างไว้ก่อนหน้านี้


7. เมื่อ Application ของคุณ deploy สำเร็จแล้วคุณต้องกำหนดค่า virtual host ของคุณ
- สำหรับ Apache
คลิกปุ่ม Config ข้าง Apache Server และเปิดไฟล์ httpd.conf (ใน Directoryการประชุม) เพื่อตั้งค่า Parameter VirtualHost สำหรับชื่อ Domain สองชื่อแยกกันโดยระบุ path ไปยัง context ที่ Deploy และชื่อ Domain:
Listen 80
<VirtualHost *:80>
DocumentRoot /var/www/webroot/firstapp
ServerName mydomain.com
...
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /var/www/webroot/secondapp
ServerName myseconddomain.com
...
</VirtualHost>

- สำหรับ NGINX
คลิกปุ่ม Config ข้าง NGINX server และเปิดไฟล์ NGINX.conf ที่การประชุมDirectory
ระบุการตั้งค่าของคุณในบล็อก Server
server_name (Domain ของคุณ)
ROOT (ข้อความที่คุณระบุขณะ deploy)
โปรดทราบว่าคุณต้องมีบล็อก Server แยกต่างหาก ที่มีการตั้งค่าพร้อมสำหรับแต่ละ Domain ที่คุณผูก
server {
listen 80;
server_name localhost;
include /etc/nginx/aliases.conf;
location / {
root /var/www/webroot/ROOT;
index index.html index.htm index.php;
location ~ \.php$ {
location ~ /\. { deny all; access_log off; log_not_found off; }
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /var/www/webroot/ROOT$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT /var/www/webroot/ROOT;
}
}
index index.php index.html index.htm;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ /\. { deny all; access_log off; log_not_found off; }
location ~ \.php$ {
location ~ /\. { deny all; access_log off; log_not_found off; }
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /var/www/webroot$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT /var/www/webroot;
}
}
ในกรณีของเรา การตั้งค่าดังนี้:
server {
listen 80;
server_name mydomain.com;
include /etc/nginx/aliases.conf;
location / {
root /var/www/webroot/firstapp;
index index.html index.htm index.php;
location ~ \.php$ {
location ~ /\. { deny all; access_log off; log_not_found off; }
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /var/www/webroot/firstapp$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT /var/www/webroot/firstapp;
}
}
index index.php index.html index.htm;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ /\. { deny all; access_log off; log_not_found off; }
location ~ \.php$ {
location ~ /\. { deny all; access_log off; log_not_found off; }
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /var/www/webroot$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT /var/www/webroot;
}
}
server {
listen 80;
server_name myseconddomain.com;
include /etc/nginx/aliases.conf;
location / {
root /var/www/webroot/secondapp;
index index.html index.htm index.php;
location ~ \.php$ {
location ~ /\. { deny all; access_log off; log_not_found off; }
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /var/www/webroot/secondapp$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT /var/www/webroot/secondapp;
}
}
index index.php index.html index.htm;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ /\. { deny all; access_log off; log_not_found off; }
location ~ \.php$ {
location ~ /\. { deny all; access_log off; log_not_found off; }
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /var/www/webroot$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT /var/www/webroot;
}
}

8. อย่าลืมบันทึกการเปลี่ยนแปลงและ RestartApplication Server เพื่อ Deploy การตั้งค่าใหม่

9. ตอนนี้คุณสามารถตรวจสอบผลลัพธ์เพื่อให้แน่ใจว่าทุกอย่างทำงานได้อย่างถูกต้อง

หวังว่าคำแนะนำนี้จะเป็นประโยชน์สำหรับคุณ ชื่อ Domain เป็นข้อมูลที่สำคัญสำหรับการระบุตัวตนออนไลน์ดังนั้นอย่าลืมปกป้องชื่อเหล่านี้ด้วย Ruk-Com Cloud โดยใช้เวลาเพียงไม่กี่นาที
