我服务器与Nginx的静态文件。 我想做什么,当有人浏览 http://foo.bar.com/ 他被redirect到 http://bar.com 但是当我访问静态文件本身时,它应该服务该文件,如: http://foo.bar.com/blog/main.css 有什么build议? 谢谢!
我在GoDaddy上看到了一些关于redirect域的文章,但没有涉及单个文件。 在我的情况下,我使用Windows共享主机,所以我不能使用任何IISpipe理工具。 我所希望的是,我可以做一些等同于Apache的.htaccess文件来configuration单个文件的redirect。 或者,是否有一个HTML文档可以返回,执行与HTTP 301redirect相同的function? 我应该指出,我使用的是从磁盘提供的纯HTML,所以我不能返回一个自定义的HTTP响应代码,因为我可以说PHP,ASP.NET,ASP等。 GoDaddy的文档不包括这种情况。 编辑 所以user78940的答案显示了一个可行的技术(GoDaddy支持Web.config <rewrite> ),但是尽pipe阅读了这个configuration元素的几个不同的教程,我仍然无法使其工作。 首先,我正在使用虚拟主机,这意味着我有这个物理文件夹结构: root < — used for primarysite.com – drewnoakes.com < — nested virtual hosting – someothersite.com < — nested virtual hosting 这里有三个网站。 根目录为primarysite.com ,子目录为相应命名的网站。 这只是你不得不如何与GoDaddy做到这一点。 你总是有一个主要的然后在那里筑巢的地方。 不幸的是,如果您不在URL上放置斜线(以访问该文件夹的默认文档),GoDaddy安装程序会提供redirect,这意味着: http://drewnoakes.com/code/exif (无尾随斜线) …被redirect到… http://drewnoakes.com/drewnoakes.com/code/exif/ (带有斜线) 这意味着Google的索引中都有这两个url。 我想整理这种情况,使前者redirect正确,后者redirect到规范forms,这样我就不会遭受页面排名稀释,我的URL也不那么容易记住的尴尬 。 我试过这个configuration,但是它以一个无限的301redirect循环结束: <rewrite> <rewriteMaps> <rewriteMap name="StaticRedirects"> <add key="/drewnoakes.com/code/exif/" value="/code/exif/" /> […]
在部署本网站之后,我在本地进行开发,在Windows Server 2008 R2上,似乎无法从浏览器上的服务器获取更新的URL。 情景是这样的: 我有一个主要的网站是指向一个现场的网站。 我创build了一个子域名,如:beta.domain.comredirect到IIS服务器的公共IP。 问题是,当浏览我的网站时浏览器地址栏不会被更新。 我有几个redirect到外部网站,他们也因此不工作。 我还注意到,在浏览器的状态栏中,当我将鼠标hover在页面上的链接上时,显示的是我的网站公共地址,而不是域名。 我不认为问题是与IIS,因为当我浏览网站使用http:/本地/服务器上,它完美的作品。 我没有任何URL重写规则或永久redirect启用。 谢谢 :)
我有一个Web应用程序,以前有这种URL格式: http://example.com/application/lang-code/path/to/page.asp 我们已经升级了应用程序,url如下所示: http://example.com/application/app/path/to/page.aspx?lang=lang-code 奇怪的是,当我使用旧的URL格式时,系统会自动将我redirect到新的URL格式。 但是URL重写模块和URLredirect模块未安装。 还有什么可以做这个重写吗? lang-code虚拟目录甚至不存在 – 所以我不知道在这里做什么。 TIA
我有这个示例规则: RewriteRule ^stories\/([0-9]+)\/(.*)+ stories/index.cfm?id=$1 这工作完美。 现在,我会redirect一个页面(只是重新编写)到另一个: Redirect 301 /stories/2000/title-of-stories http://host/stories/2001/another-stories 但是Apacheredirect到 http://host/stories/2001/another-stories?id=2000 追加到URL的查询string“?id = 2000” 我如何删除它? 非常感谢!
我运行IIS7.5运行一个软件应用程序的网站。 该应用程序支持自动更新,所以当我释放一个新版本时,服务器会受到来自软件的下载请求的冲击。 我已经安装了一些我想用来提供请求下载的小型VPS。 由于软件自动更新请求的工作方式,所请求的下载URL始终来自同一个服务器/ URL。 所以,我想知道如果我设置IISredirect请求到一个特定的URL到一个随机或循环的镜像站点列表。 例如,下载请求进入http://osirisdevelopment.com/BatteryBar/BatteryBarSetup.exe 。 IIS会返回一个带有位置标题的302代码到http://mirror1.osirisdevelopment.com/BatteryBarSetup.exe等。
我按照我的Drupal 6.22网站(93-94行)根目录下的.htaccess文件的注释中的说明操作。 此configuration不起作用。 任何想法,我可能会出错? # # Apache/PHP/Drupal settings: # # Protect files and directories from prying eyes. <FilesMatch "\.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl|svn-base)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template|all-wcprops|entries|format)$"> Order allow,deny </FilesMatch> # Don't show directory listings for URLs which map to a directory. Options -Indexes # Follow symbolic links in this directory. Options +FollowSymLinks # Make Drupal handle any 404 errors. ErrorDocument 404 /index.php […]
我想在Apache服务器上使用.htaccess来只将调用redirect到文件系统中不是文件或文件夹的服务器。 例如,如果服务器收到以下请求: http://www.domain.tld/page1.html 而page1.html不是服务器上的实际文件,它应该301redirect到: http://new.domain.tld/page1.html 否则,它不应该做任何事情。 这可能吗? 如果是这样,怎么样? 请尽可能提供一些示例代码。 我现在的代码是: RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.domain\.tld [NC] Rewriterule ^(.*)$ http://subdomain.newdomain.tld/$1 [L,R=301] 虽然这样做的redirect,它不会忽略服务器上的实际文件和文件夹。
我目前正在运行一个具有“多商店”function的网站,这基本上意味着单一网站处理多个域名。 在这种情况下,我有domain-a.com和domain-b.com都指向一个商店。 目前,他们在domain-a.com/blog有一个博客,可以从这两个站点访问。 最近,我们希望为每个域build立一个单独的博客,所以我们将博客从domain-a.com/blog移到blog.domain-a.com ,并在htaccess文件中设置301redirect来转发domain-a.com/blog到新的位置。 问题是,这也将domain-b.com/blog上的stream量redirect到blog.domain-a.com 。 只使用.htaccess,可以让domain-a.com/blogredirect到blog.domain-a.com和domain-b.com/blogredirect到一个完全不同的位置,比如说domain-b.com/newBlog ? 编辑:最后一段的末尾已被重写为清晰
直升机, 我想redirect我的子域到内部的URL。 例如,当用户inputsomeaddress.com时,他应该看到一个主页 但是当xxx.someaddress.cominput时,我想打开http://someaddress.com/testpage 如何做到这一点? 我已经尝试过: <VirtualHost *:8089> DocumentRoot "c:\app" </VirtualHost> <VirtualHost sms.localhost:8089> ServerName smslocalhost Redirect permanent / http://localhost:8089/testpage </VirtualHost> 问题是,无论我现在input什么,我都会redirect到http:// localhost:8089 / testpage