是否可以在发生404事件时更改.htaccess中的DirectoryIndex?我有一个场景,如果有一个404,我希望将DirectoryIndex更改为index.htm而不是index.php。但是,默认情况下,我必须在.htaccess中声明DirectoryIndex,所以我要寻找类似于if else语句的语句。
if 404
then DirectoryIndex=index.htm
else
then DirectoryIndex=index.php
这个是可能的吗?谢谢。
我的托管公司最近将我从Apache 1升级到Apache 2,我开始看到一些与我的mod_rewrite完全不同的行为。
这是我的.htaccess文件:
DirectoryIndex blog.html
# Various rewrite rules.
<IfModule mod_rewrite.c>
RewriteEngine on
# Rewrite current-style URLs of the form 'showpage.php?url=x'.
RewriteRule ^(.*\.html)$ showpage.php?url=$1
我想试验一下布局,看看什么行得通,什么不管用。我不想对所有的流量都这么做,以防有什么东西不起作用。为此,我想将部分流量重定向到一个单独的文件。我想用.htaccess来做这件事。我的第一次尝试是重定向IP地址以1或2结尾的人,以获得新的布局。我想动态地设置DirectoryIndex来完成这个任务。
这就是我所拥有的:
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
#split 20% of the traffic to go to the alternative layout
RewriteCond %{REMOTE_ADDR
我有一个CentOS 7 VPS,在这里我试图按照https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-centos-7的指示安装虚拟主机。
我已经完成了本教程的第五步。然后,当我试图重新启动apache时,失败了:
$ sudo apachectl restart
[sudo] password for student01:
Job for httpd.service failed because the control process exited with error
在我的apache配置中,我有一个虚拟主机配置如下:
Alias /mediamanager /storage/files/mediamanager
<Directory /storage/files/mediamanager>
DirectoryIndex /mediaManagerIndex.php
DAV On
# ... And some authentication directives ... #
</Directory>
这样的想法是,有人可以通过WebDAV客户机访问文件,也可以通过简单的web浏览器访问文件,在这种情况下,PHP脚本会生成一
我使用以下语法阻止.htaccess文件中的一些IP:
DirectoryIndex index.php
order allow,deny
deny from 17.18.19.0
deny from 18.17.19.1
allow from all
现在我不确定我是否可以用这个:
DirectoryIndex index.php
order allow,deny
deny from 18.17.19.1
allow from all
deny from 18.15.19.1
allow from all
deny from 18.18.19.1
allow from all
所以我能重复一