我有一台运行在Linux ubuntu上的AWS EC2服务的服务器,我还安装了apache、php和mysql。
我已经在文档根/var/www/html
中添加了一个.htaccess
文件。
我在其中输入了以下代码:ErrorDocument 404 /var/www/html/404.php
,但它仍然没有出现。
我多次输入这个命令:sudo service httpd restart
重启服务器,但没有显示任何更改...
我该怎么解决这个问题..。我做错什么了吗?
发布于 2015-09-18 23:30:31
如果您已经尝试了以上所有方法,这些都是有效且很好的答案,但您的htaccess文件不工作或无法读取,请更改apache2.conf
文件中的指令。在Ubuntu下,路径是/etc/apache2/apache2.conf
更改指向<Directory>
文件所在的公共网页的htaccess指令。从AllowOverride None
更改为AllowOverride All
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
我也有同样的问题,并在Ubuntu Ask上找到了答案和解释!论坛https://askubuntu.com/questions/421233/enabling-htaccess-file-to-rewrite-path-not-working
发布于 2016-10-03 13:57:43
最有可能的是,AllowOverride被设置为None。在/etc/apache2文件夹中apache2.conf的Directory部分中
尝试将其设置为AllowOverride All
发布于 2018-03-05 21:27:36
根据我的经验,/var/www/ directory指令阻止了子文件夹virtualhost指令。因此,如果您尝试了所有建议,但仍然不起作用,而您正在使用虚拟主机,请尝试以下方法;
1-确保在/etc/apache2/sites-available/example.com.conf
中有AllowOverride All
指令
2-检查/etc/apache2/apache2.conf
中的/var/www/目录指令(可能在第164行),如下所示;
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
如果存在AllowOverride None
指令,请将其更改为AllowOverride All
或仅转义行
https://stackoverflow.com/questions/12202387
复制相似问题