Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何添加WordPress';htaccess配置到VirtualHost conf中_Wordpress_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

如何添加WordPress';htaccess配置到VirtualHost conf中

如何添加WordPress';htaccess配置到VirtualHost conf中,wordpress,apache,.htaccess,mod-rewrite,Wordpress,Apache,.htaccess,Mod Rewrite,我将WordPress的配置放入我的VirtualHost指令中,它如下所示: <VirtualHost *:80> ServerName www.example.com ServerAlias example.com DocumentRoot /var/www/html <Directory /> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # add a trailing slash

我将WordPress的配置放入我的VirtualHost指令中,它如下所示:

<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/html

<Directory />
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
</Directory>
</VirtualHost>

服务器名www.example.com
ServerAlias example.com
DocumentRoot/var/www/html
重新启动发动机
重写基/
重写规则^index\.php$-[L]
#在/wp admin中添加尾部斜杠
重写规则^wp admin$wp admin/[R=301,L]
RewriteCond%{REQUEST_FILENAME}-f[或]
RewriteCond%{REQUEST_FILENAME}-d
重写规则^-[L]
重写规则^(wp-(内容|管理|包括)。*)$1[L]
重写规则^(.*\.php)$$1[L]
重写规则。index.php[L]
当我像上面那样将WordPress的配置放在VirtualHost的根目录中时,永久链接和子域将无法工作

但是,当我将WordPress的配置放在
/etc/httpd/conf/httpd.conf
根目录中时,它是
/var/www/html
(正如您所看到的,它与虚拟主机是同一个根目录),那么子域和永久链接就可以了,我不明白吗

我不想将WordPress的配置放在
httpd.conf
中的原因是我想创建另一个站点,但它不是多站点,所以我必须在其中输入另一个站点

  • 我在
    httpd.conf
  • 我使用CentOS 7
  • Apache2.4
  • Wordpress 4.5.3
  • 修改重写包括在内

几个小时后,另一条重写规则似乎出现在
上方
包含可选路径/to/virtualhost/*.conf
httpd.conf
干扰了Wordpress的配置

要解决wordpress中最常见的永久链接或子域问题,请始终检查您的重写规则,并确保wordpress规则()始终位于其他规则之上