Pertama, buat direktori untuk projek anda. Sebagai contoh, mari buat direktori yang dipanggil php:
sudo mkdir /var/www/html/php
buat fail index.php dalam direktori projek anda:
echo "<?php phpinfo(); " | sudo tee /var/www/html/php/index.php
Tetapkan kebenaran yang sesuai supaya Apache boleh mengakses direktori:
sudo chown -R www-data:www-data /var/www/html/php sudo chmod -R 755 /var/www/html/php
Arahan sudo chown -R www-data:www-data /var/www/html/php melakukan tindakan berikut:
-R: Pilihan ini menunjukkan bahawa operasi harus dilakukan secara rekursif, iaitu bukan sahaja pada direktori yang ditentukan, tetapi juga pada semua subdirektori dan failnya.
www-data:www-data: Menentukan bahawa pengguna dan kumpulan yang akan menjadi pemilik baharu fail ialah kedua-dua www-data. Ini ialah pengguna dan kumpulan biasa pada sistem Linux yang berfungsi sebagai pengguna lalai untuk pelayan web seperti Apache dan Nginx.
/var/www/php: Ini ialah laluan direktori yang sifatnya sedang ditukar.
Arahan sudo chmod -R 755 /var/www/html/php melakukan tindakan berikut:
755: Ini ialah mod kebenaran:
Nombor pertama (7) memberikan pemilik fail (atau direktori) kebenaran membaca (4), menulis (2) dan melaksanakan (1) kebenaran, dengan jumlah 7.
Nombor kedua (5) memberikan kumpulan membaca (4) dan melaksanakan (1) kebenaran, tetapi tidak menulis kebenaran, untuk jumlah 5.
Nombor ketiga (5) juga memberikan pengguna lain membaca (4) dan melaksanakan (1) kebenaran, tetapi tidak menulis kebenaran, untuk jumlah 5.
Ringkasnya, arahan ini menukar kebenaran semua fail dan direktori dalam /var/www/html/php, membenarkan pemilik mempunyai kawalan penuh (membaca, menulis dan melaksanakan), manakala kumpulan dan pengguna lain hanya membaca dan laksanakan kebenaran. Ini adalah perkara biasa dalam persekitaran pelayan web untuk memastikan pelayan boleh mengakses fail yang diperlukan tanpa menjejaskan keselamatan.
Buat fail konfigurasi baharu untuk Hos Maya anda. Fail harus mempunyai nama yang sama dengan projek php:
sudo your_editor /etc/apache2/sites-available/php.conf
Tambah konfigurasi berikut pada fail:
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName php.info DocumentRoot /var/www/html/php <Directory /var/www/html/php/> AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/php_error.log CustomLog ${APACHE_LOG_DIR}/php_access.log combined </VirtualHost>
Mari kita analisa setiap bahagian kod:
Juru webAdmin Pelayan@hos tempatan
Nama Pelayan php.info
DocumentRoot /var/www/html/php
AllowOverride All
Memerlukan semua yang diberikan
Menentukan laluan ke fail log ralat Apache untuk Hos Maya ini. ${APACHE_LOG_DIR} ialah pembolehubah yang biasanya ditetapkan dalam fail konfigurasi Apache utama, menunjuk ke direktori tempat log disimpan. Di sini, ralat yang berkaitan dengan Hos Maya ini akan direkodkan dalam fail php_error.log.
CustomLog ${APACHE_LOG_DIR}/php_access.log digabungkan
Defines the path to the Apache access log file for this Virtual Host. Like ErrorLog, this also uses the ${APACHE_LOG_DIR} variable. The combined format records information about requests, including the client's IP address, the time of the request, the HTTP method, the URL requested, the status code and the user agent.
Enable the new Virtual Host with the command:
sudo a2ensite php.conf
If you need to use .htaccess or URL rewrites, activate the Apache rewrite module:
sudo a2enmod rewrite
To access your project using the server name you defined (php.info), add an entry in the /etc/hosts file:
sudo your_editor /etc/hosts
Add the following line to the end of the file:
<p>127.0.0.1 php.info</p>
Restart Apache for the changes to take effect:
<p>sudo systemctl restart apache2</p>
You can now access your project in the browser by typing http://php.info.
위 내용은 가상 호스트를 사용하는 PHP Apache 프로젝트의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!