By default Userdir Module is available when apache2 package installed on ubuntu server but not yet active. We just need to enable userdir module to be used. Follow the guide how to enable Apache2 Userdir Module in ubuntu server.
โดยปกติ apache2 จะไม่เปิดการให้บริการกับ user เพื่อทำเวปไซค์ได้ ต้องตั้งค่าต่างๆ ด้วยมือครับ คำสั่งย่อๆ สั้นๆ ใช้งานได้ตั้งแต่ ubuntu 12.04 ขึ้นไป หรือ Linux Mint 14 ขึ้นไปครับ
Enable Apache2 Userdir Module in Ubuntu Server 12.04
Make sure the Apache webserver is installed correctly. I’ve already wrote about How to Install LAMP server you can found it here.
Use command a2enmod to enable Apache2 userdir module. these command will be create symlink /etc/apache2/mods-available/userdir.load and /etc/apache2/mods-available/userdir.conf in to directory /etc/apache2/mods-enable/
sudo a2enmod userdir
Restart apache2 daemon with following command
sudo service apache2 restart
Ceate folder “public_html” in the home directory, then set permission public_html folder to 0755
mkdir ~/public_html && chmod 0755 ~/public_html
Apache2 Userdir Module Support PHP Script ทำให้ user สามารถใช้งาน php ได้ด้วย เพราะปกติจะใช้งานได้แค่ไฟล์ htm,html เท่านั้นครับ
After userdir module enabled, users can put HTML files into the folder /home/username/public_html. But only static HTML files only, PHP scripts can not be used. Although Apache2 have been bundled with PHP module.
PHP files from user’s public_html directory is disabled by default for security reasons. so that all PHP files that is inside the public_html folder will be recognized as mime-type Application/octet-stream and will be downloaded when accessed via web browser. If you want to enable PHP processing when using userdir this is what you need to do. First you edit following Apache configuration file in this way:
sudo nano /etc/apache2/mods-available/php5.conf
Now you need to comment out a line php_admin_value engine Off
Before:
… <IfModule mod_userdir.c>
<Directory /home/*/public_html>
php_admin_value engine Off
</Directory>
</IfModule> …
After:
… <IfModule mod_userdir.c>
<Directory /home/*/public_html>
# php_admin_value engine Off
</Directory>
</IfModule> …
sudo /etc/init.d/apache2 reload
To testing PHP script work or not in the public_html directory, you can create some php script. In this case we are using phpinfo, in terminal type following command
echo '<?php phpinfo(); ?>' > ~/public_html/info.phpอ่านมาตั้งนาน งงกันไม๊ครับ เป็นวิธีการทำให้ directories ของ user สามารถใช้งานเป็นเวปไซค์ของตัวเองได้ โดยจะมี ~user เป็น path ตาม url ครับ เช่น http://127.0.0.1/~ton/info.php ครับ ก็จะเห็นหน้าต่างแสดงรายละเอียดการตั้งค่าต่างๆของ server php5 และอื่นๆ ครับ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น