如何基于apache+;php#u cgi和apache+;mod_php?
大家好 我有一个带有Apache+mod_php站点(site1.local)的CentOS6.6服务器。我需要用php_cgi配置第二个站点(site2.local)。所以,我创建了一个用户,给了他www文件夹的权限,将site1配置为mod_php,创建了一个phpinfo.php。另外,我安装了php cgi,并尝试配置虚拟主机,仅适用于第一个站点,在第二个站点上出现错误:如何基于apache+;php#u cgi和apache+;mod_php?,apache,centos,cgi,virtualhost,mod-php,Apache,Centos,Cgi,Virtualhost,Mod Php,大家好 我有一个带有Apache+mod_php站点(site1.local)的CentOS6.6服务器。我需要用php_cgi配置第二个站点(site2.local)。所以,我创建了一个用户,给了他www文件夹的权限,将site1配置为mod_php,创建了一个phpinfo.php。另外,我安装了php cgi,并尝试配置虚拟主机,仅适用于第一个站点,在第二个站点上出现错误: the requested url /cgi-bin/phpinfo.php was not found onthi
the requested url /cgi-bin/phpinfo.php was not found onthis server.
这是我的配置:
cat/etc/httpd/conf/httpd.conf
<VirtualHost *:80>
ServerAdmin webmaster@site1.local
DocumentRoot /var/www/wwwmaster/site1.local
ServerName site1.local
ServerAlias www.site1.local
ErrorLog logs/site1.local-error_log
CustomLog logs/site1.local-access_log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@site2.local
DocumentRoot /var/www/wwwmaster/site2.local
ServerName site2.local
ServerAlias www.site2.local
ScriptAlias /cgi_bin/ /usr/bin/php-cgi/
Action php-cgi /cgi-bin
AddHandler php-cgi php
<Directory /usr/bin/php-cgi>
Allow from all
</Directory>
<Directory "/var/www/wwwmaster/site2.local/">
<FilesMatch "\.php">
SetHandler php-cgi
</FilesMatch>
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order Deny,Allow
Allow from all
</Directory>
ErrorLog logs/site2.local-error_log
CustomLog logs/site2.local-access_log common
</VirtualHost>
服务器管理员webmaster@site1.local
DocumentRoot/var/www/wwwmaster/site1.local
ServerName site1.local
ServerAlias www.site1.local
错误日志/site1.local-error\u日志
自定义日志/site1.local-access\u日志公用
服务器管理员webmaster@site2.local
DocumentRoot/var/www/wwwmaster/site2.local
ServerName site2.local
ServerAlias www.site2.local
ScriptAlias/cgi_-bin//usr/bin/php-cgi/
动作php-cgi/cgi-bin
AddHandler php cgi php
通融
SetHandler php cgi
选项索引如下SYMLINKS包括ExecCGI
允许超越所有
命令拒绝,允许
通融
错误日志/site2.local-error\u日志
自定义日志/site2.local-access\u日志公用
我做错了什么以及如何修复它?您只需取消对apache配置文件中显示
NameVirtualServer*:80
的行的注释
如果您希望虚拟服务器具有多个端口,只需在apache配置文件中根据需要添加任意数量的
NameVirtualServer*:[port number]
。您是指指令NameVirtualHost吗?它在配置中,但第二个站点仍然不工作。