为什么“设置->固定链接”会在nginx服务器上创建.htaccess文件?

时间:2016-08-23 作者:Ĭsααc tիε βöss

我创建了一个wordpress站点,托管在nginx服务器上,并且settings-> Permalinks 并单击save changes. 这将创建一个。站点根目录上的htaccess文件。

在Apache服务器上,它是合乎逻辑的,值得创建一个。htaccess文件,但它与nginx服务器有什么关系??删除是否安全。htaccess文件,从我的网站根目录??

1 个回复
最合适的回答,由SO网友:birgire 整理而成

WordPress试图通过查看全局$_SERVER[\'SERVER_SOFTWARE\'] 变量

Apache检查是:

$is_apache = (strpos($_SERVER[\'SERVER_SOFTWARE\'], \'Apache\') !== false 
    || strpos($_SERVER[\'SERVER_SOFTWARE\'], \'LiteSpeed\') !== false);
而Nginx检查是:

$is_nginx = (strpos($_SERVER[\'SERVER_SOFTWARE\'], \'nginx\') !== false);
因此,您应该首先查看:

var_dump( $_SERVER[\'SERVER_SOFTWARE\'] );
看看是否正确。

Here are some alternative workarounds:

也可以避免.htaccess 创建文件时使用:

add_filter( \'flush_rewrite_rules_hard\', \'__return_false\' );
为了避免save_mod_rewrite_rules() 运行。

save_mod_rewrite_rules() 函数,有一个got_mod_rewrite().htaccess 已更新。也可以使用:

add_filter( \'got_rewrite\', \'__return_false\' );
避免insert_with_markers() 要运行,请写入.htaccess 文件

相关推荐

Corrupt .htaccess file

去年夏天,我的网站运行良好。但今天,当我尝试在wp管理部分进行更新时,我在所有PHP文件上都出现了403个错误:load-styles, load-scripts, edit.php, media-new.php, 等有趣的是,我的网站前端没有问题。屏幕截图:<我读了几篇文章,建议禁用插件。我试过了,但没有解决任何问题</然后我试着删除我的.htaccess 文件,这确实修复了wp管理部分,但它破坏了前端,现在我在主页上看到403个错误!好像我只能得到其中一个。大约5分钟后,Wordpress