web-dev-qa-db-ja.com

Apache2を使用したlocalhostで許可されていない許可

Apacheに別のフォルダーを追加しようとしましたが、testing/index.htmlにアクセスしようとすると次のエラーが表示されます。

アイデアは、すべての顧客に対して/home/neagoe/Work/InterWebs/Projects/[PROJECT NAME]/CustomerProjects/website/distのようなフォルダーを持ちたいということです。

禁じられた

このサーバーの/index.htmlにアクセスする権限がありません。テストポート80のApache/2.2.22(Ubuntu)サーバー

私が従った手順は次のとおりです。

ステップ1:

Sudo chmod a+x /home/neagoe/Work/InterWebs/Projects/testing/CustomerProjects/website/dist

ステップ2:

Sudo chown -R www-data:www-data /home/neagoe/Work/InterWebs/Projects/testing/CustomerProjects/website/dist

Sudo chmod -R 775 /home/neagoe/Work/InterWebs/Projects/testing/CustomerProjects/website/dist

Step3:

Sudo adduser $USER www-data

Step4:

Sudo a2enmod userdir

Step5:

Sudo cp /etc/Apache/sites-available/default /etc/Apache/sites-available/testing

ファイル/etc/Apache/sites-available/testingを編集したので、次のようになります。

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName testing
    DocumentRoot /home/neagoe/Work/InterWebs/Projects/testing/CustomerProjects/website/dist

    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /home/neagoe/Work/InterWebs/Projects/testing/CustomerProjects/website/dist/ >
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

    ErrorLog ${Apache_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${Apache_LOG_DIR}/access.log combined
</VirtualHost>

Step6:

ホスト( "/ etc/hosts")を編集したため、次のようになります。

127.0.0.1       localhost 
127.0.0.1       testing


# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Step7:

Sudo a2ensite testing
Sudo service Apache2 restart

インターネットで約2時間検索しましたが、何が問題だったのかわかりません。上記と同じ手順に従って見つかったすべてのページ。

AskUbuntuにも同様の質問があることは知っていますが、答えはStep2で行ったディレクトリへの許可を変更することです。

これが本当に重複している場合は申し訳ありませんが、正しい答えを見つけることができませんでした。

ありがとうございました!

2
N Alex

私は同じ問題を抱えていたので、/etc/Apache2/Apache2.conffileを編集して追加します

<Directory /var/www/ >
   Order allow,deny
   Allow from all
   Require all granted
</Directory>

apache2をリセットします

 Sudo service Apache2 restart 

私のために働く。

1
Yusef Mohamadi