ฉันกำลังโฮสต์เว็บไซต์บนเซิร์ฟเวอร์ส่วนตัวของฉันเอง (ตัว Raspberry Pi 3 ที่รัน Raspbian ตาม Ubuntu 16.04) ที่ฉันติดตั้ง LAMP (ดังต่อไปนี้ นี้ คำแนะนำทีละขั้นตอน) และ WordPress (กำลังติดตาม นี้ หนึ่ง).
ฉันติดตั้ง WordPress ในไซต์ "รอง" ซึ่งหมายความว่าอยู่ในโฟลเดอร์ที่มีอยู่ในโฟลเดอร์ของไซต์ "หลัก" ของฉัน สถานที่ตั้งหลักคือ /var/www/my-main-site/
ซึ่งมีโฟลเดอร์ /var/www/my-main-site/my-secondary-site
ที่ไฟล์ WordPress ทั้งหมด (ด้านล่างฉันคัดลอกโครงสร้างโฟลเดอร์และการอนุญาต)
ไซต์รองสามารถเข้าถึงผ่านนามแฝงซึ่งฉันกำหนดค่าไว้ใน /etc/apache2/sites-enabled/my-main-site.conf
ไฟล์ดังต่อไปนี้
<VirtualHost *:port>
ServerAdmin my-email@mail.com
ServerName my-public-ip:port
Alias "/my-secondary-site" "/var/www/my-main-site/my-secondary-site"
DocumentRoot /var/www/my-main-site/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ในขณะที่ทดสอบด้วยสองตัวอย่าง .html
ไฟล์ใช้งานได้: ฉันสามารถเข้าถึงเว็บไซต์หลักของฉันผ่าน my-public-ip:port
และเว็บไซต์รองผ่าน my-public-ip:port/my-secondary-site
. หลังจากการทดสอบนี้ฉันติดตั้ง WordPress
ปัญหาคือเมื่อฉันพยายามเข้าถึงเว็บไซต์รองเพื่อให้การกำหนดค่า WordPress เสร็จสมบูรณ์ผ่านทางเว็บอินเตอร์เฟส
Forbidden
You don't have permission to access /my-secondary-site on this server.
Server unable to read htaccess file, denying access to be safe
ดังต่อไปนี้ ขั้นตอนที่ 3 จากคำแนะนำที่ฉันเปิดใช้งาน .htaccess
แทนที่ด้วยการเพิ่มบรรทัดเหล่านี้ในตอนท้ายของ /etc/apache2/apache2.conf
<Directory /var/www/my-main-site/>
AllowOverride All
</Directory>
ดังต่อไปนี้ step5 ฉันเปลี่ยนสิทธิ์สำหรับโฟลเดอร์ของฉันดังนี้ (โปรดทราบว่าผู้ใช้ของฉันคือผู้ใช้ที่ฉันใช้ในการเชื่อมต่อผ่าน ssh ซึ่งมีสิทธิ์รูท):
drwxr-xr-x 4 my-user www-data 4096 May 1 11:48 my-main-site
/* which contains these two folders*/
---> drwxr-xr-x 2 my-user www-data 4096 May 1 11:01 public_html
---> drwxr-sr-x 5 my-user www-data 4096 May 1 14:22 my-secondary-site
/* files and folders in /var/www/my-main-site/my-secondary-site
---> -rw-r--r-- 1 my-user www-data 147 May 1 11:50 index.html
---> -rw-r--r-- 1 my-user www-data 418 Sep 25 2013 index.php
---> -rw-r--r-- 1 my-user www-data 19935 Jan 6 20:32 license.txt
---> -rw-r--r-- 1 my-user www-data 7415 Mar 18 17:13 readme.html
---> -rw-r--r-- 1 my-user www-data 5438 Mar 18 16:07 wp-activate.php
---> drwxr-sr-x 9 my-user www-data 4096 Apr 3 22:19 wp-admin
---> -rw-r--r-- 1 my-user www-data 364 Dec 19 2015 wp-blog-header.php
---> -rw-r--r-- 1 my-user www-data 1627 Aug 29 2016 wp-comments-post.php
---> -rw-r--r-- 1 my-user www-data 2853 Dec 16 2015 wp-config-sample.php
---> -rw-r--r-- 1 my-user www-data 3261 May 1 12:59 wp-config.php
---> drwxrwsr-x 5 my-user www-data 4096 May 1 12:35 wp-content
---> -rw-r--r-- 1 my-user www-data 3669 Aug 20 2017 wp-cron.php
---> drwxr-sr-x 18 my-user www-data 12288 Apr 3 22:19 wp-includes
---> -rw-r--r-- 1 my-user www-data 2422 Nov 21 2016 wp-links-opml.php
---> -rw-r--r-- 1 my-user www-data 3306 Aug 22 2017 wp-load.php
---> -rw-r--r-- 1 my-user www-data 36593 Apr 3 17:22 wp-login.php
---> -rw-r--r-- 1 my-user www-data 8048 Jan 11 2017 wp-mail.php
---> -rw-r--r-- 1 my-user www-data 16246 Oct 4 2017 wp-settings.php
---> -rw-r--r-- 1 my-user www-data 30071 Oct 18 2017 wp-signup.php
---> -rw-r--r-- 1 my-user www-data 4620 Oct 24 2017 wp-trackback.php
---> -rw-r--r-- 1 my-user www-data 3065 Aug 31 2016 xmlrpc.php
ฉันพยายามที่จะให้ความเป็นเจ้าของ /var/www/my-primary-site
ไปที่ www-data
ผู้ใช้ผ่าน sudo chown -R www-data /var/www/my-primary-site/
แต่ปัญหายังคงอยู่
ฉันยังลองเปลี่ยน /etc/apache2/apache2.conf
ไฟล์ที่จะอนุญาตให้แทนที่ทั้งหมด /var/www/
โฟลเดอร์ดังต่อไปนี้ แต่ไม่มีอะไรเปลี่ยนแปลง
/* From... */
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
/* .... to */
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ความคิดใด ๆ