How to edit httpd.conf file in AMAZON EC2
codeigniter .htaccess in amazon ec2 removal of index.php not working

当我阅读上述问题时,我意识到我的问题与他们相同。因此,我应该在我的Amazon EC2实例中更改httpd.conf文件,以使htaccess文件正常工作。

我通过ssh客户端连接到我的实例,并且它在Linux终端上执行以下代码。

 sudo nano /etc/httpd/conf/httpd.conf

此代码的结果我看到页面:
#
# This is the main Apache HTTP server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See <URL:http://httpd.apache.org/docs/2.4/> for detailed information.
# In particular, see
# <URL:http://httpd.apache.org/docs/2.4/mod/directives.html>
# for a discussion of each configuration directive.
#
# Do NOT simply read the instructions in here without understanding
# what they do.  They're here only as hints or reminders.  If you are unsure
# consult the online docs. You have been warned.
#
# Configuration and logfile names: If the filenames you specify for many
# of the server's control files begin with "/" (or "drive:/" for Win32), the
# server will use that explicit path.  If the filenames do *not* begin
# with "/", the value of ServerRoot is prepended -- so 'log/access_log'
# with ServerRoot set to '/www' will be interpreted by the
# server as '/www/log/access_log', where as '/log/access_log' will be
# interpreted as '/log/access_log'.

#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.

因此,看到此消息后,我不知道该怎么办。我将在哪里将AllowOverRide None更改为AllowOverRide All,因为我看不到任何类似信息。

在将AllowOverRide None更改为AllowOverRide All之后,我应该使用任何命令重新启动服务器。

最佳答案

您不想弄乱添加AllowOverride的httpd.conf文件。您应该在要启用htaccess文件的虚拟主机的vhost配置中执行此操作。

否则,如果您无法修改虚拟主机配置(或者根本没有一个),则只需将其添加到httpd.conf:

<Directory />
    Options None
    AllowOverride All
    Order deny,allow
    Deny from all
</Directory>

<Directory /path/to/your/htdocs/>
    AllowOverride All
</Directory>
/path/to/your/htdocs/是您的htaccess文件或文档根目录所在的位置。

10-05 22:32