Android

Paano mag-set up ng virtual host ng apache sa ubuntu 18.04

How to Setup Apache Virtual Hosts (Website) on Ubuntu 18.04 and 16.04

How to Setup Apache Virtual Hosts (Website) on Ubuntu 18.04 and 16.04

Talaan ng mga Nilalaman:

Anonim

Sa tutorial na ito, magbibigay kami ng isang hakbang sa pamamagitan ng mga tagubilin sa hakbang tungkol sa kung paano mag-set up ng Mga Apache Virtual Host sa Ubuntu 18.04.

Pinapayagan ka ng Apache Virtual Host na magpatakbo ng higit sa isang website sa isang makina. Sa pamamagitan ng Virtual Host, maaari mong tukuyin ang ugat ng dokumento ng site (ang direktoryo na naglalaman ng mga file ng website), lumikha ng isang hiwalay na patakaran sa seguridad para sa bawat site, gumamit ng iba't ibang mga sertipiko ng SSL at marami pa.

Kahit na ang tutorial na ito ay isinulat para sa Ubuntu 18.04 Bionic Beaver ang parehong mga hakbang ay maaaring magamit para sa Ubuntu 16.04 Xenial Xerus.

Mga kinakailangan

Tiyaking nakilala mo ang sumusunod na mga kinakailangan bago magpatuloy sa tutorial na ito:

  • Mayroon kang isang domain name na tumuturo sa iyong public server IP. Gagamitin namin ang example.com .May naka-install ka na Apache sa pamamagitan ng pagsunod sa mga tagubiling ito. Nag-log in ka bilang isang gumagamit na may mga pribilehiyo ng sudo.

Lumikha ng Direktoryo ng Direktoryo

Ang ugat ng dokumento ay ang direktoryo kung saan ang mga file ng website para sa isang domain name ay naka-imbak at nagsilbi bilang tugon sa mga kahilingan. Maaari mong itakda ang ugat ng dokumento sa anumang lokasyon na gusto mo, sa gabay na ito gagamitin namin ang sumusunod na istraktura ng direktoryo:

/var/www/ ├── domain1.com │ └── public_html ├── domain2.com │ └── public_html ├── domain3.com │ └── public_html

Karaniwan, gagawa kami ng isang hiwalay na direktoryo para sa bawat domain na nais naming i-host sa aming server sa loob ng direktoryo /var/www . Sa loob ng bawat isa sa mga direktoryo na ito, gagawa kami ng isang public_html direktoryo na mag-iimbak ng mga file ng domain website.

Magsimula sa pamamagitan ng paglikha ng direktoryo ng ugat para sa domain ng example.com :

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

Para sa mga layunin ng pagsubok ay lumikha din ng isang index.html file sa loob ng direktoryo ng root ng dokumento ng domain.

Buksan ang iyong editor at lumikha ng demo file:

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

<code> Welcome to example.com Success! example.com home page! </code>

Welcome to example.com Success! example.com home page!

Sa gabay na ito, pinapatakbo namin ang mga utos bilang isang gumagamit ng sudo at ang mga bagong nilikha na file at direktoryo ay pag-aari ng root user.

Upang maiwasan ang anumang mga isyu sa pahintulot maaari naming baguhin ang pagmamay-ari ng direktoryo ng root ng dokumento ng domain sa gumagamit ng apache ( www-data ):

sudo chown -R www-data: /var/www/example.com

Lumikha ng isang Virtual Host

Sa pamamagitan ng default sa mga sistema ng Ubuntu, ang mga file ng pagsasaayos ng Apache Virtual Host ay naka-imbak sa /etc/apache2/sites-available direktoryo na /etc/apache2/sites-available at maaaring paganahin sa pamamagitan ng paglikha ng simbolikong mga link sa /etc/apache2/sites-enabled direktoryo na /etc/apache2/sites-enabled .

Buksan ang iyong editor ng pagpipilian at lumikha ng mga sumusunod na pangunahing file ng pagsasaayos ng Virtual Host:

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

ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined

  • ServerName : Ang domain na dapat tumugma para sa virtual host na pagsasaayos. Ito ay dapat na ang iyong domain name. ServerAlias : Ang lahat ng iba pang mga domain na dapat tumugma din para sa virtual host na ito, tulad ng www subdomain. DocumentRoot : Ang direktoryo kung saan magsisilbi si Apache sa mga file ng domain. Options : Ang direktiba na kontrol na kung saan ang mga tampok ng server ay magagamit sa isang tukoy na direktoryo.
    • -Indexes : Pinipigilan ang listahan ng direktoryo. FollowSymLinks : Sinasabi ng pagpipiliang ito sa iyong web server na sundin ang mga simbolikong link.
    AllowOverride : Tinutukoy kung aling mga direktiba ang idineklara sa .htaccess file ay maaaring mapalampas ang mga direktiba ng pagsasaayos. ErrorLog , CustomLog : Tinutukoy ang lokasyon para sa mga file ng log.

Maaari mong pangalanan ang file ng pagsasaayos hangga't gusto mo ngunit ang pinakamahusay na kasanayan ay ang paggamit ng domain name bilang pangalan ng file ng virtual host na pagsasaayos.

Upang paganahin ang bagong virtual host file na kailangan namin upang lumikha ng isang makasagisag na link mula sa virtual host file sa direktoryo na sites-enabled ng mga sites-enabled , na binabasa ng apache2 sa panahon ng pagsisimula.

Ang pinakamadaling paraan upang paganahin ang virtual host ay sa pamamagitan ng paggamit ng isang a2ensite katulong:

sudo a2ensite example.com

Ang iba pang pagpipilian ay mano-mano ang lumikha ng isang symlink tulad ng ipinakita sa ibaba:

sudo ln -s /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-enabled/

Kapag tapos na, subukan ang pagsasaayos para sa anumang mga error sa syntax na may:

sudo apachectl configtest

Kung walang mga error makikita mo ang sumusunod na output:

Syntax OK

I-restart ang serbisyo ng Apache para sa mga pagbabago na magkakabisa:

sudo systemctl restart apache2

Sa wakas upang mapatunayan na ang lahat ay gumagana tulad ng inaasahan, buksan ang http://example.com sa iyong browser na pinili, at makakakita ka ng tulad nito:

Konklusyon

Nalaman mo kung paano lumikha ng isang apache virtual host na pagsasaayos upang mag-host ng maraming mga domain sa isang solong server ng Ubuntu. Maaari mong ulitin ang mga hakbang na binabalangkas namin sa itaas at lumikha ng mga karagdagang virtual host para sa lahat ng iyong mga domain.

apache ubuntu

Ang post na ito ay isang bahagi ng serye na kung paano i-install-lampara-stack-on-ubuntu-18-04.

Iba pang mga post sa seryeng ito:

• Paano Mag-install ng Apache sa Ubuntu 18.04 • Paano Mag-set up ng mga Apache Virtual Host sa Ubuntu 18.04 • Ligtas na Apache sa Pag-encrypt sa Ubuntu 18.04 • Paano Mag-install ng MySQL sa Ubuntu 18.04 • Paano Mag-install ng PHP sa Ubuntu 18.04