我正在尝试在我的本地主机服务器上运行 cgi。
首先,我添加了虚拟本地主机。
我有 conf 文件/etc/apache2/sites-available/myage.com.conf
这是这个文件的内容。
<VirtualHost *:80>
ServerName mypage.com
ServerAlias www.mypage.com
ServerAdmin [email protected]
DocumentRoot /var/www/mypage.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
ScriptAlias /cgi-bin/ /var/www/mypage.com/cgi-bin/
<Directory "/var/www/mypage.com/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
我在重新启动 apache2 服务时遇到错误
[Fri Jan 16 09:06:12.422793 2015] [alias:warn] [pid 12733] AH00671: The ScriptAlias directive in /etc/apache2/sites-enabled/mypage.com.conf at line 31 will probably never match because it overlaps an earlier ScriptAlias.
最佳答案
将您声明的 ScriptAlias
和 <Directory>...</Directory>
指令放在 VirtualHost
标记块内;您的上述文件目前已将它们声明为服务器范围内,因为它们在它之外。ScriptAlias
重叠警告是由于 ScriptAlias /cgi-bin/
在 Apache 启动时已经在配置文件中早先在服务器范围内声明的。
关于php - Alias 指令可能永远不会匹配,因为它与之前的 Alias 重叠,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27978920/