将Apache.htaccess文件更改为与Nginx一起使用
我正在将一个网站从一个有Apache web服务器的服务器迁移到另一个运行Nginx web服务器的服务器,我想转换.htaccess文件,问题不仅在于语法,还在于文件名,它是否也是“.htaccess”或什么 以下是我使用的工具: 它不是100%准确,但它是相当好的基础 此外,这里还有一个关于转换规则的链接: 这个有点帮助: 编辑:将Apache.htaccess文件更改为与Nginx一起使用,apache,.htaccess,nginx,Apache,.htaccess,Nginx,我正在将一个网站从一个有Apache web服务器的服务器迁移到另一个运行Nginx web服务器的服务器,我想转换.htaccess文件,问题不仅在于语法,还在于文件名,它是否也是“.htaccess”或什么 以下是我使用的工具: 它不是100%准确,但它是相当好的基础 此外,这里还有一个关于转换规则的链接: 这个有点帮助: 编辑: 文件名应为nginx.confnginx不支持.htaccess文件 但是.htaccess文件不好。这是一种将部分apache配置服务器放在文件系统上的方
文件名应为
nginx.confnginx不支持.htaccess文件
但是.htaccess文件不好。这是一种将部分apache配置服务器放在文件系统上的方法,并告诉apache在每次请求时检查文件系统,以查看您是否有一些特殊的配置。
如果您是主机提供商并且希望允许用户进行某些web服务器配置,那么.htaccess文件的唯一实际用途就是将配置的一小部分委托给用户
Nginx重新启动时编译Nginx配置。当然,如果您真的不关心信息泄露问题(如用户关闭您的web服务器配置),您可以将几个文件包含在您的web目录中,但是每次请求完成时都要读取的.htaccess与.htaccess具有相同的功能,这并不是nginx的方式
:
你不能这样做。你不应该。如果您需要.htaccess,您可能做错了
看看这里:
文件名为“.htaccess”也??谢谢你的快速回复,但我想知道文件名是否也应该是“.htaccess”或其他名称?文件名将是nginx.conf,下面是一个示例:但也许你仍然可以使用.htaccess并告诉服务器使用它,但因为“代码”如果不同,我建议不要使用.htaccess以避免混淆Thaaaaaanks,我可以将文件放在我想要控制访问权限的目录中吗?你的意思是在不同的文件夹中有多个.htaccess?这不是一个好答案-如果你使用共享主机(如Wordpress博客),你只是一个客户;无法重新编译nginx。是的,按目录配置不是一个好主意,但是当你处于食物链的末端时,并不总是可以挑剔。@PeterFlynn这是事实,我没有写Nginx文档,你也不会有按目录配置的支持,可能包括来自服务器或位置范围的配置文件,但这可能会使Nginx进程崩溃,因此主机可能会避免这种情况。似乎Nginx不是为这些任务而设计的,仅此而已。如果你把一个.htaccess文件放在那里,它将不会被Nginx读取。@regilero宾果。Nginx不是为共享托管场景而设计的。也不应该这样:共享托管要求每个用户运行自己的HTTP服务器,该服务器被反向代理,至少在您需要任何安全性时是这样。@PeterFlynn如果您使用共享托管,那么您就不关心性能或安全性,可以坚持使用Apache。如果您真的在意,那么您将购买一个VPS,这意味着您可以完全控制Nginx配置。@Demi完全正确。但在现实世界中™ 最终用户不是具有修改Nginx配置技能的系统工程师。基本上,他们得到的是他们花钱买的东西:-)该链接指向的是有一个他们没有解决方案的无关问题的人。检查:
server {
server_name domain1.com;
rewrite ^(.*) http://www.domain1.com$1 permanent;
}
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /home/user/www/domain1;
index index.php index.html index.htm;
server_name www.domain1.com;
include hhvm.conf;
}