Articles of 重写

Nginx不redirectphp文件

每个文件都传递给“index.php”,但是每个php文件都没有正确的redirect,因为fastcgi。 任何解决方法? location / { if ($request_filename ~* "index.php") { break; } rewrite ^/(.*)$ /index.php?page=$1 last; break; } location ~* \.php$ { include fastcgi_params; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name; fastcgi_pass 127.0.0.1:9000; } 谢谢

nginx重写文件的位置

在我的应用程序中,我试图将http://domain.com/accounts/login和/accounts/register链接到http://domain.com/accounts.php?action=$ ,其中$是这样的: http://domain.com/accounts/$ 我不知道在哪里定义重写和放下什么。 我可以通过SSH访问整个VPS,但是我不确定要编辑哪个文件。 那么文件位于哪里? 我检查了/ opt /文件夹,它看起来是空的。 我可能正在运行lighttpd,所以你能帮我两个例子吗? 否则,你能告诉我如何检查我是否使用lighttpd。

除了其他子域名,nginx wwwredirect

也许还有另一个nginx的redirect问题…找不到答案,所以: 如何将http://domain.comredirect到http://www.domain.com,但是不要在给定包含此服务器定义的cloudfoundry nginxconfiguration的情况下重写任何子域http://*.domain.com: server { listen 80; server_name _; server_name_in_redirect off; } 我试过这个configuration server { server_name domain.com rewrite ^(.*) http://www.domain.com$1 permanent; } server { listen 80; server_name _; server_name_in_redirect off; } 但是获得无限的redirect。

在Nginx的proxy + apache设置中重写URL

我正在与Apache和Nginx的代理python / Django的工作。 我需要转换一些这样的url: www.mydomain.com/client_A/ www.mydomain.com/client_B/ 至 www.mydomain.com/clients/1/ www.mydomain.com/clients/2/ 我将在Nginxconfiguration中进行重写,但问题是这不应该对用户可见,而是应该继续将URL看作www.mydomain.com/client_A/而不是作为内部URL。 主要想法是在Nginx/Apacheconfiguration中执行此操作 提前致谢。

Nginx与redmine作为子Uri不起作用

我在覆盆子pi上安装了redmine和thin和nginx。 我可以使用http://raspberrypi/访问我的redmine安装。 不过,我希望它是http://raspberrypi/redmine 。 我目前(工作)nginx网站configuration看起来像这样: upstream redmine { server unix:/var/run/thin/redmine.0.sock; } server { listen 80; server_name raspberrypi; root /usr/share/redmine/public; location / { proxy_pass http://redmine/; } } 当我将位置线更改为location /redmine {我可以使用http://raspberrypi/redmine访问redmine,但是所有链接都指向http://raspberrypi/没有附加“redmine”,并且不起作用。

NGINX重写URL如果特定的域名和特定的url

当用户使用root(aka /)url访问特定的域名时,我需要重写url。 到目前为止我有: server { listen 80; server_name name1.com name2.com; location = / { # Well, I need this only for NAME2.COM (it should not rewrite NAME1.COM) rewrite name2.com/users/sign_in } } 如何重写仅适用于NAME2.COM。 有时NGINX语法会使我的堆栈溢出。 请帮忙。

如何从地址中删除index.php,同时通过fastcgi将请求redirect到index.php?

我有一个基本的Magento(PHP应用程序,使用index.php作为控制器)在Ubuntu服务器上设置。 我将NGINXconfiguration为使用PHP-CGI来为所有PHP页面提供服务。 虽然该网站按预期工作,但所有url的格式如下: http://domain.com/index.php/apparel/shoes.html 有没有办法使用nginx 重写设置,以便我可以这样的URL: http://domain.com/apparel/shoes.html 目前,这是我在configuration文件中处理页面请求的内容: # catch rewritten and standard URLs location ~* ^(/index.php)?(.*) { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root/index.php$1; fastcgi_read_timeout 600; } 谢谢。

hg中断链接通过proxy_pass服务于nginx后面

我有一个简单的Ubuntu 10.10,Nginx,Mercurial,PHP和MySQL堆栈。 当前文件结构: /opt/nginx/html – document root for nginx (where my website files are) /opt/nginx/html/.hg – repository data /usr/share/mercurial/ – where the templates/static folder is 我正在运行在localhost:8000托pipe的hg -serve。 在这一点之后,我并不清楚水银是如何与资源相联系的。 我有我想要的入口点下面的Nginxconfiguration: location /mercurial/ { auth_basic "Authentication"; auth_basic_user_file /opt/nginx/html/.hg/file.password; proxy_pass http://localhost:8000/; } 这可以正常工作,除了在validation之后完全加载Mercurial实例。 我得到了我期望看到的页面,但/静态引用都被打破,我点击的链接(如其中一个变更集)也被中断(找不到它们,或者带我回到破碎的主页面)。 它试图find这些文件在我的IP地址/静态/ …这是不正确的。 mercurial ui目录位于我的文档根目录/ opt / nginx / html之外。 where / static的path是/ usr / […]

Nginx重写语法

我见过一堆ngnix重写,其语法如下: server { server_name www.example.com; rewrite ^(.*) http://example.com$1 permanent; } 我不明白^(.*)部分。 是否把所有的东西都放在ULD的TLD之后?

使用nginx将通配符子域redirect到不同的顶级域名

我们有一堆通配符子域(_foo.example.com,bar.example.com等),当通过HTTPS访问时,应该redirect到我们安全域上的等效子域。 一些例子: https://foo.example.com => https://foo.secure.com https://foo.example.com/some/path => https://bar.secure.com/some/path https://bar.example.com => https://bar.secure.com 我认为这可以用nginx重写来完成,但我不确定语法。 这是我正在尝试: server { listen 443; server_name *.example.com; rewrite ^(.*) https://*.secure.com$1 permanent; } 这显然不会工作,因为我没有捕获传入的子域,并在重写中使用它。