在哪里放置.htaccess用于apache cgi-bin

时间:2015-03-09 23:38:43

标签: apache .htaccess apache2 cgi cgi-bin

我在/ usr / lib / cgi-bin /文件夹下有一个python脚本 可从以下网址访问此脚本:http://localhost/cgi-bin/test.py
现在我想在.htaccess文件中使用SetEnv设置Apache env变量。必须放置.htaccess文件的位置,所以我可以在我的python脚本中访问env变量?

感谢F481

1 个答案:

答案 0 :(得分:0)

他们写了herehtaccess works in all directories except cgi-bin。但是,正如您从here所看到的那样,有一种解决方法。

基本上,您编辑httpd.conf文件的<Directory "C:/path/to/cgi-bin">部分 - 并将其放在cgi-bin中的.htaccess文件中。

请记得在更改httpd.conf后重新启动apache

还有一个小问题:你的httpd.conf中可能已经有<Directory "/var/www/cgi-bin">了。编辑它 - 有重复的部分会导致白发。

上面的密码保护cgi-bin目录对我来说很有用,因为在cgi-bin中使用.htaccess不起作用。将其插入我的httpd.conf文件的<Directory "C:/path/to/cgi-bin">部分确实有效。

现在说:

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all

    AuthType Basic
    AuthName "Scripts"
    AuthUserFile /var/secret/.htpasswrd

    Require valid-user
    Satisfy All
</Directory>