Php 如何创建从apache到nginx的重写规则
我刚开始使用nginx,但是我在重写规则方面有问题。 这里有一些我的.htaccess规则Php 如何创建从apache到nginx的重写规则,php,apache,.htaccess,mod-rewrite,nginx,Php,Apache,.htaccess,Mod Rewrite,Nginx,我刚开始使用nginx,但是我在重写规则方面有问题。 这里有一些我的.htaccess规则 RewriteEngine On ErrorDocument 404 /404.php RewriteRule ^cupinfo/(.*)$ /cup/?cupinfo=$1 [L] RewriteRule ^profile$ /cup/?profile=$1 [L] 我试着像这样在nginx中使用我的重写,但那不起作用,我不知道问题出在哪里。浏览器总是显示404错误。我的网站在“public_ht
RewriteEngine On
ErrorDocument 404 /404.php
RewriteRule ^cupinfo/(.*)$ /cup/?cupinfo=$1 [L]
RewriteRule ^profile$ /cup/?profile=$1 [L]
我试着像这样在nginx中使用我的重写,但那不起作用,我不知道问题出在哪里。浏览器总是显示404错误。我的网站在“public_html/cup”目录下,可能有问题
server {
listen 80;
server_name localhost;
location / {
root home/$2/public_html/cup;
index index.php;
try_files $uri $uri/ @rewrite;
}
location @rewrite {
rewrite ^/cupinfo/(.*)$ /cup/?cupinfo=$1 last;
rewrite ^/profile$ /cup/?profile=$1 last;
}
}
谢谢 您的
根指令中有一个未定义的$2
,第二个重写指令中有一个未定义的$1
,您正在重写到public\u html/cup/cup/index.php
,所以您的请求文件名中可能有太多的/cup/
,但当我转到“localhost/cup/profile”时,nginx还是会说“404notfound”。我们现在在看什么,你的问题还是你的垃圾桶?您希望URI/cup/profile
找到什么物理文件?