我正在尝试编写一个 htaccess 文件,但无法使其正常工作。我的网站上有一个名为“gpio”的目录。我正在编写的 htaccess 文件位于 /var/www/gpio 中。
当有人请求 URL http://domain.com/gpio时,我希望将请求重定向到脚本,并将“gpio”附加到查询字符串中。这是我的 htaccess 文件中的内容:
# .htaccess
#DirectoryIndex index.html
RewriteEngine on
# I changed domain name a few months ago...
RewriteCond %{HTTP_HOST} ^olddomain.com/*$
RewriteRule ^(.*)$ http://newdomain.com/$1 [R=301,L]
# handle the case where the directory exists
RewriteCond %{REQUEST_FILENAME} -d
# this is the part that doesn't work
RewriteRule ^(.*)$ /cgi-bin/pyindex.cgi?q=$1 [L,QSA]
# handle the case where a file is requested
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /cgi-bin/pyindex.cgi?q=$1 [L,QSA]
问题是当我访问这个 URL 时,我被重定向到脚本,但请求的路径没有附加到查询字符串中。在 pyindex.cgi 中,打印查询字符串时,它只包含 'q='。最终结果是,当我应该看到代表一类帖子的页面时,我看到了我的主页。
任何关于我做错了什么的想法都将不胜感激。