Я размещаю веб-сайт на своем частном сервере (Raspeberry 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>
Следуя шагу 5, я изменил разрешения для своих папок следующим образом (обратите внимание, что my-user - это пользователь, которого я использую для подключения через ssh, у которого есть права root):
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>
Есть идеи?