好吧,我一直在绞尽脑汁想弄清楚这个虚拟主机到底是怎么回事。我可以从默认的文档根目录加载标准 html 和 php 文件,但无法加载任何虚拟主机。
我很困惑,因为 apache 能够写入 srp.com vhost 的日志目录,但错误日志只有“[错误] [客户端 127.0.0.1] 不允许符号链接或链接目标无法访问:/var/www/vhosts”。从我读到的内容来看,这是 vhosts 作为符号链接的问题,但我已经包含了 FollowSymLinks 选项。
当我尝试设置虚拟主机时我忽略了什么?
Apache2 以 www-data 用户身份运行。
默认 DocumentRoot 为 /var/www
/var/www:
drwxrwsr-x 2 www-data www-data 4096 Mar 14 22:49 .
-rw-rw-r-- 1 www-data www-data 64 Nov 27 23:35 index.php
-rw-r--r-- 1 www-data www-data 181 Mar 14 22:13 index.html
lrwxrwxrwx 1 www-data www-data 46 Mar 14 22:49 vhosts -> /mnt/slackhome/krizzo/Dropbox/websites/vhosts/
/var/www/vhosts/srp.com/ 目录:
drwxrwxr-x 5 www-data www-data 4096 Mar 14 22:04 .
drwxrwsr-x 13 www-data www-data 4096 Mar 14 22:02 ..
drwxrwxr-x 2 www-data www-data 4096 Mar 14 22:04 cgi-bin
drwxrwxr-x 8 www-data www-data 4096 Mar 14 22:01 htdocs
drwxrwxr-x 2 www-data www-data 4096 Mar 14 22:18 logs
httpd.conf 文件
<Directory />
Options Indexes +FollowSymLinks MultiViews
AllowOverride all
Order deny,allow
allow from 127.0.0.1
Deny from all
</Directory>
srp.com (/etc/apache2/sites-available/srp.com)
<virtualHost *:80>
ServerAdmin [email protected]
ServerName srp.com
ServerAlias srp.com
# Indexes + Directory Root.
DirectoryIndex index.php index.html
DocumentRoot /var/www/vhosts/srp.com/htdocs/
<Directory /var/www/vhosts/srp.com/htdocs/ >
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
# CGI Directory
ScriptAlias /cgi-bin/ /var/www/vhosts/srp.com/cgi-bin/
<Location /cgi-bin>
Options +ExecCGI
</Location>
# Logfiles
ErrorLog /var/www/vhosts/srp.com/logs/error.log
CustomLog /var/www/vhosts/srp.com/logs/access.log combined
</virtualHost>
答案1
解决方案是确保 php 已安装 mysql 驱动程序。Code Igniter 使用 @ 来控制其 sql 模块中的任何错误,这意味着如果连接数据库时出现问题,日志将不会显示任何内容。
https://stackoverflow.com/questions/15588813/codeigniter-blank-page-and-error-500-in-apache-log