我刚刚在 Wordpress 中启用了多站点并收到以下消息:
警告!通配符 DNS 可能配置不正确!
安装程序尝试联系您域中的随机主机名 (3757b5.mysite.no)。这导致出现错误消息:无法打开 fopen() 的句柄http://3757b5.mysite.no
当我启用多站点时,我没有收到单站点安装的这些错误。
我的 Web 服务器运行在 Ubuntu 11.1 上虚拟机(VirtualBox)。
需要明确的是: 这是在我的本地开发计算机上。它不在 ISP 服务器上。
我已检查php.ini
fopen 是否已启用,并且已启用:
allow_url_fopen = On
默认的 Apache 配置文件/etc/apache2/sites-avaialble/default
如下所示:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
我的网站的 Apache 配置文件如下所示:
<VirtualHost *:80>
DocumentRoot /var/www/mysite/
ServerName mysite.no
ServerAlias *.mysite.no
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/storelocator/>
AllowOverride All
Allow from all
</Directory>
</VirtualHost>
有谁知道我可以尝试如何解决这个问题?
笔记
为了访问 mysite.no 和我的子网站,我已经更新了位于我的计算机(Win 7)上的 HOST 文件:
10.20.23.104 mysite.no
10.20.23.104 engelstad.mysite.no
答案1
我相信这样任何非显式子域都将被发送到您的 Web 服务器,Apache 会将请求分配给特定的虚拟主机。
如果你想要这种能力,就创建一个明星记录:
*.mysite.no. 3600 A [ip-address].
您需要在购买 mysite.no 域名的控制面板中创建 DNS 记录。