
私の設定:
ubuntu 22.04
Apache/2.4.52 (Ubuntu) Server
I created /etc/apache2/sites-available/test.mysite.conf:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName test.xxxxxxxx.com
DocumentRoot /home/test/deploy/current
<Directory /home/test/deploy/current>
AllowOverride all
Options -MultiViews
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/test/error.log
CustomLog ${APACHE_LOG_DIR}/test/access.log combined
</VirtualHost>
次のようにして組み込みの 000-default.conf を無効にしました。
sudo a2dissite 000-default.conf
そして、/etc/apache2/sites-enabledに存在しないことを確認しました
仮想ホストを有効にしました:
sudo a2ensite test.mysite.conf
そして、それが/etc/apache2/sites-enabledにあることを確認しました
構成が正常であることを確認しました:
sudo apache2ctl configtest
そしてApacheサーバーを再起動しました:
sudo systemctl restart apache2
権限のリストはこちら
drwxr-xr-x root root /
drwxr-xr-x root root home
drwxr-x--- test test test
drwxr-xr-x test test deploy
drwxrwxr-x test test current
-rw-rw-r-- test test index.html
これは AWS でホストされているので、私も AWS にアクセスし、セキュリティ グループの受信ルールを確認して、自宅の IP アドレス (固定 IP アドレスを使用) からの接続を許可しました。また、サーバー上でファイアウォールは有効になっていません。
でも私がそうするとhttp://test.xxxxxxxx.com より
ブラウザに次のメッセージが表示されます。
Forbidden
You don't have permission to access this resource.
Apache/2.4.52 (Ubuntu) Server at test.xxxxxxxx.com Port 80
何か案は?
答え1
の権限が/home/test/
制限されすぎています。
drwxr-x--- test test test
このディレクトリに入ることは誰にもtest
許可されていないため、Apache はそれを読み取ることができません。
/home/
とにかく、ウェブルートを配置する適切な場所ではありません。/var/www
代わりに を使用してください。