本地Apache服务器查找文件的错误文件夹

时间:2014-01-18 13:56:18

标签: php wordpress apache .htaccess ubuntu

我在运行Apache2的Ubuntu机器上安装了一个现有的Wordpress站点。

除了网站的一个自定义部分,即https://localhost.wordpress/app之外,几乎所有网页都正确加载。当我尝试访问此页面时,我的apache2错误日志中出现错误:

[Fri Jan 17 16:57:03 2014] [error] [client 127.0.0.1] File does not exist: /var/www/app, referer: http://localhost.wordpress/

Apache服务器似乎在错误的地方寻找文件。它不是去我拥有wordpress网站(/home/dev/public_html/wordrpress/public)的地方,而是查看/var/www/app

我该如何更改?

我对Wordpress并不太熟悉,但问题似乎出现在 app文件夹上,我以前在Wordpress安装中并不常见。

我的设置

文件夹结构:

enter image description here

我已经配置了一个虚拟主机,以便该网站从与我的其他网站相同的文件夹位置运行。即在/etc/apache2/sites-available/wordrpress我有:

<VirtualHost *:80>

  ServerName  localhost.wordrpress
  ServerAlias www.localhost.wordrpress

  DocumentRoot /home/dev/public_html/wordrpress/public

  LogLevel warn
  ErrorLog  /home/dev/public_html/wordrpress/log/error.log
  CustomLog /home/dev/public_html/wordrpress/log/access.log combined

</VirtualHost>

我还通过更新我的/etc/hosts文件来确保网站在本地解析到我的计算机:

# DNS for localhost wordpress site development.
127.0.0.1 localhost.wordpress
127.0.0.1 www.localhost.wordpress

我按照以下说明设置 https配置&amp;将这些命令运行到我的终端:

sudo a2enmod ssl

sudo a2ensite default-ssl

sudo /etc/init.d/apache2 restart

我还更改了数据库的wp_options表,使用我的机器localhost url作为wordpress siteurl等。

1 个答案:

答案 0 :(得分:0)

尝试添加:

RewriteCond %{REQUEST_URI} ^/(app).*$ [NC]
RewriteRule . - [L]

到默认的WordPress安装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

所以看起来应该是这样的:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/(app).*$ [NC]
RewriteRule . - [L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress