如果我使用 url 打开我的 Yii2 应用程序http://IP 地址/目录名称它运行完美。现在我已将我的域名指向路径 /var/www/html/。但如果我在浏览器中打开我的域名,它会显示我的 yii2 项目的目录结构。因此http://IP 地址/目录名称我可以访问我的应用程序,但不能使用域名。000-default.conf 中的 /var/www/html/ 启用了 Apache 重写。
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
-000-default.conf 的内容
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/html>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
-domain.com.conf 的内容
<VirtualHost *:80>
ServerName domain.com
ServerAlias www.domain.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/domain.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
答案1
为了防止目录列表,您应该从 Options 指令中删除 Indexes 关键字,或者简单地-
在其前面放置一个,例如:-Indexes
此外,使用以下命令检查您的 DocumentRoot,它必须与您的 Yii2 文件夹匹配:
grep -i Documentroot /etc/apache2/httpd.conf
您是否ServerName
在/etc/apache2/sites-enabled/000-default.conf
conf文件中设置了参数?例如:
ServerName IP_ADDRESS
并且始终记得在进行更改后重新加载配置