dtgu21994537 2014-09-06 21:35
浏览 49
已采纳

如何使用Shell脚本使'index.php'优先于'index.html'

I'm automating a server setup and to install PHP I need to add index.php to /etc/apache2/mods-enabled/dir.conf.

The target content of the file looks like this:

<IfModule mod_dir.c>

          DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm

</IfModule>

I need to add index.php before index.html.

It should end up looking like this

<IfModule mod_dir.c>

          DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm

</IfModule>

How do I do this with a shell script?

  • 写回答

2条回答 默认 最新

  • drccfl9407 2014-09-06 21:55
    关注

    All you're doing is making index.php higher priority than index.html. It's an odd thing to need to do, and probably better done in .htaccess or something. However, if you really want to make the change in the config file directly you can use sed. In this case something like the following:

    cd /etc/apache2/mods-enabled
    sed -e 's/\s*DirectoryIndex.*$/\tDirectoryIndex index\.php <...> index\.htm/' \
        dir.conf > dir.conf.tmp && mv dir.conf.tmp dir.conf
    

    You need to be sure that 'DirectoryIndex' only appears once though, and fill in <...> with the rest of the line (escaping dots: 'index.pl' -> 'index\.pl').

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?