【发布时间】:2017-04-04 15:15:51
【问题描述】:
几天来,我一直在尝试在 apache 虚拟主机上安装 wordpress 博客,但无济于事。请注意,虚拟主机配置工作得很好,因为每个虚拟主机都会加载其各自的 index.html 或 index.php。只有在安装 Wordpress 时,我才能得到任何响应。我的 conf 文件看起来像
<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
ServerName example.com
ServerAlias www.example.com
ServerAdmin admin@example.com
DocumentRoot /var/www/example
<Directory /var/www/example/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>
博客位于目录 /var/www/example 中,我的 .htaccess 文件看起来像
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
我启用了 mod_rewrite,所以我不确定是什么问题。检查 apache 错误日志什么也没发现,访问日志总是显示返回 301。有什么想法吗?
【问题讨论】:
-
那么当您尝试打开 wordpress 主页时会发生什么?
-
@DusanBajic 主页永远无法解析。几分钟后超时。
-
您需要先检查基础知识。如果去掉.htaccess,在站点根目录下创建一个简单的index.html,能打开吗?
-
@DusanBajic 虚拟主机工作得很好。它会加载一个 index、html 或一个默认的 index.php 文件就好了。只是加载 wordpress 导致主机无法解析。
-
尝试
curl -v http://example.com并在响应中查找Location:标头