我有一个 CodeIgniter 应用程序,我将其部署到使用 php 5.2 的服务器上,而我的开发箱使用的是 5.3,有些东西不再起作用。我不想升级 php,以免服务器上的其他应用程序出现问题。无论如何,我编译了一个自定义 PHP,并将以下内容与所有其他 conf 文件一起添加到 /etc/httpd/conf.d/zcid.conf 中的单个 .conf 文件中。
<VirtualHost *:80>
DocumentRoot /var/www/cid/app
ServerName sub.example.co.nz
</VirtualHost>
<Directory "/var/www/cid/app">
authtype Basic
authname "oh dear how did this get here i am no good with computer"
authuserfile /path/to/auth
require valid-user
RewriteEngine on
RewriteCond $1 !^(index\.php|robots\.txt|createEvent\.php|/cgi-bin)
RewriteRule ^(.*)$ /index.php/$1 [L]
AddHandler custom-php .php
Action custom-php /cgi-bin/php53.cgi
</Directory>
在 /var/www/cid/app 中,我有 cgi-bin 文件夹和从 /usr/local/php53/bin/php-cgi 复制的 php53.cgi
但是现在当我导航到子域时它显示:
该服务器上未找到请求的 URL /cgi-bin/php53.cgi/index.php/。
如果我尝试浏览 /cgi-bin,它会显示(它应该显示什么?):
您无权访问此服务器上的 /cgi-bin/。
现在很困惑。有人知道该怎么办吗?谢谢 :)
答案1
也许可以看看这个帖子: http://codeigniter.com/forums/viewthread/96347/
答案2
chmod 777 cgi-bin