我正在运行ubuntu 14.04
。apache 2.4.x
我创建了虚拟主机mydomain.local
。除了主页之外,我的所有网站在本地机器上都可以完美运行。http://mydomain.local/
我可以运行任何类似http://mydomain.local/dir-name
或 的程序http://mydomain.local/file.name
。简而言之,所有带有尾部的 URL 都可以正常工作。
这是我的目录结构:
/var/www/html/site_name/public
.htaccess
wp/index.php
index.php
以下是我的.htaccess
代码:
# Base is the URL path of the home directory
RewriteBase /
RewriteRule ^$ wp/index.php [L]
# Skip real files and directories
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Otherwise send it to WordPress
RewriteRule .* wp/index.php [L]
虚拟主机配置文件:
<VirtualHost *:80>
ServerName mydomain.local
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/site_name/public
<Directory /var/www/html/site_name/public>
Options +FollowSymLinks
Options +Indexes
AllowOverride all
Require all granted
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/site_name_local_error.log
CustomLog ${APACHE_LOG_DIR}/site_name_local_access.log combined
</VirtualHost>
我的所有 URL 都重定向到/wp/index.php
。只有主页http://mydomain.local/
没有重写。
http://mydomain.local/没有渲染主 index.php 而不是 wp/index.php
注意:相同的代码和 htaccess 配置适用于ubuntu 16.04
。