这个想法是使用不同的域名服务js,css,img文件,所以我创build了以下域名: css.mydomain.com js.mydomain.com img.mydomain.com 主站点的URL是www.mydomain.com。 当我访问该网站时,每个img,css,js文件都会传递给用户抛出子域。 而且一切正常。 问题是我可以使用域名css.mydomain.com,js.mydomain.com,img.mydomain.com之一访问主站点 我想要的是拒绝每一个不是js,css,img文件types的请求。 我怎样才能做到这一点在htaccess?
我有这个URL重写规则 RewriteRule ^(send-your-request.*)$ / [NC,L,QSA,R=301] 它应该基本上只是从URL中删除“/发送你的请求”(即重写它的查询string参数从域即 http://example.com/send-your-request/?a_aid=rocketnews24&pname=just%20a%20test 被重写为: http://example.com/?a_aid=rocketnews24&pname=just%20a%20test 在这种情况下,它的工作,但如果我添加最后一个参数,它停止工作 http://example.com/send-your-request/?a_aid=rocketnews24&pname=just%20a%20test&plink=http%3A%2F%2Fradio-eva.jp%2Fshop%2Fproducts%2Fdetail.php%3Fproduct_id%3D82 任何人都可以告诉我一个更好的重写规则,可以处理所有的查询string参数? 编辑这里是我的其他规则,但我有第一个“L”,所以它应该停止处理权? RewriteRule ^(send-your-request.*)$ / [NC,QSA,R=301,L] Redirect 301 /products http://whiterabbitexpress.com/ RewriteRule ^index\.php$ – [L] RewriteCond %{QUERY_STRING} ^(.*)q=(.*)$ RewriteRule ^(.*)$ $1?%1s=%2 [L,R=301] RewriteRule ^catalogsearch/result/?$ / [NC,QSA,L,R=301] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
情况如下: 我最近在www.pixelscrapper.com重新构build了我的网站。 我仍然在legacy.pixelscrapper.com(托pipe在同一台服务器上)旧的旧版网站。 是否有可能使用Apache htaccess重写规则,使我的旧内容显示在我的新网站上的子目录下? 换句话说,我希望能够访问www.pixelscrapper.com/legacy/some-folder/some-item并查看实际位于legacy.pixelscrapper.com/some-folder/some-item的内容。 一直在四处搜寻,没有太多的成功。 我以为像下面这样的东西可能会有诀窍,但也许我走了吗? RewriteCond %{HTTP_HOST} ^pixelscrapper.com$ RewriteRule ^/legacy/?$ http://legacy.pixelscrapper.com/ [R=301,L]
我在我的htaccess中写了一个规则,基本上这样说: 如果请求的是主页 而cookie尚未设置 用/addCookie.php重写页面 然后在addCookie.php中,我们设置cookie并redirect回主页。 这一切都很好,但如果用户不接受cookie,我们会得到一个无限循环的redirect。 我是新来的mod_rewrite,我做了很多search,但不能打破循环。 我到目前为止: RewriteCond %{ENV:REDIRECT_STATUS} 200 RewriteRule .* – [S=1] RewriteCond %{REQUEST_URI} "^/$" RewriteCond %{HTTP_COOKIE} !device_detected RewriteRule ^ addCookie.php [L] 我正在尝试做什么? 我可以添加一个查询string从addCookie.php的redirect,但我宁愿保持相同的请求。 任何build议,慷慨欢迎。
我对PHP手册中的这个ini列表感到困惑: http : //www.php.net/manual/en/ini.list.php 我想通过htaccess设置一些自定义的php.ini值,但是其中哪一个命令不起作用? php_value upload_max_filesize 1M php_value max_execution_time 3 php_value max_input_time 3 php_value memory_limit 2M php_value post_max_size 1M php_value open_basedir "/scripts" php_flag allow_url_fopen 0 php_flag allow_url_include 0 php_flag file_uploads 0 php_value disable_functions 'apache_child_terminate, apache_setenv, define_syslog_variables, escapeshellarg, escapeshellcmd, exec, fp, fput, ftp_connect, ftp_exec, ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist, highlight_file, ini_set, phpinfo, ini_alter, ini_get_all, […]
我可以从你们那里得到明确的答案吗? 如果我有一个名为index.php的文件被称为关于应该我使用结尾斜杠链接例如: <a href="/about/"></a> 要么 <a href="/about"></a> 最后,我的客户之一使用IE9是说,某些链接不开放,我已经尝试了一个没有斜杠。 有什么我可以添加到我的.htaccess来解决这个问题吗? 我testing过这个页面,对我来说看起来不错,但是你知道客户端是什么样的,他希望在个人电脑上工作。
我有一个专用于本地服务器(.dev)的域,以及一个将http://folder.dev/subfolder/这样的请求redirect到/htdocs/folder/subfolder的.htaccess文件。 除了一个小问题之外,它工作的很好。 当我启用了目录列表时,我可以正确地访问所有的文件夹,子文件夹和文件,除非当我点击Parent Directory链接,例如,应该导致http://folder.dev ,但redirect到http://folder.dev/folder/ ,最后抛出404 not found 。 同样,如果Parent Directory链接到http://folder.dev/subfolder/ ,它链接到http://folder.dev/folder/subfolder/ 。 下面是我的.htaccess的样子: RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} !(/$|\.) RewriteRule (.*) %{REQUEST_URI}/ [R=301,L] RewriteCond %{ENV:REDIRECT_SUBDOMAIN} ="" RewriteCond %{HTTP_HOST} ^(www\.)?([a-z0-9][-a-z0-9]+)\.dev\.?(:80)?$ [NC] RewriteCond %2 !^www|ftp|mail|pop3|localhost$ RewriteCond %{DOCUMENT_ROOT}/%2 -d RewriteRule ^(.*) %2/$1 [E=SUBDOMAIN:%2,L] RewriteRule ^ – [E=SUBDOMAIN:%{ENV:REDIRECT_SUBDOMAIN}] 除此之外,其他一切正常(例如文件中的相关链接等)
我在服务器上有很多的Vhost,我正在寻找一种方法来轻松地configurationUrl重写,而无需打开Putty,在SSH上连接和使用vim进行编辑。 是否有可能把重写规则放在我的www文件夹中的文件中,并每隔5-10分钟重新加载Nginx conf? 我不想要类似htaccess的行为。 只是把所有的rewrinting规则在我的项目的文件夹(SVN)。 在此先感谢(对不起,我的英语)!
我有wordpress安装在根目录的子目录中。 我已经按照提供的说明将index.php放在根目录下,并创build适当的htaccess文件。 网站正在运行。 除一个以外,可以按照预期访问。 该网站以前是一个html静态网站,默认为default.htm。 我发现,在旧网站的链接是http://www.kayakbc.ca/default.htm的情况下 ,如果遵循,则会将我带到“未find”页面。 没问题,为/default.htm添加了redirect到http://kayakbc.ca/ 。 它在一个redirect循环中结束。 尝试了这种基本的redirect代码的各种变化,并没有得到好的结果。 我觉得这个bug是来自wordpressbuild议的htaccess子码文件安装的代码 # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ – [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress 已经search了高和低,不能拿出一个解决scheme。 我甚至把一个default.htm文件放在根目录下,redirect到index.php,并被卡在相同的redirect循环中。 任何线索将不胜感激。 谢谢。
我的硬盘上有一台服务器和一个本地版本。 我正试图通过本地访问本地版本。 进入本地主机工程,我input基本的HTML文件和所有。 问题是我无法加载我的服务器的php.ini文件。 系统总是只加载默认的一个,没有别的。 当我运行phpinfo()它说: (php.ini)path:/ etc / php5 / apache2 加载的configuration文件:/etc/php5/apache2/php.ini 我不认为我的.htaccess文件有任何问题,这是与服务器上的相同。 我怀疑/ etc / apache2中有什么缺失。 在这里,我通过将/ var / www中的文件根目录和目录更改为服务器本地实例的path,更改了/ etc / apach2 / sites_enabled / 000-default。 我觉得有点奇怪,文件名是000-默认,而不只是“默认”。 我还更改了/ etc / apache2 / sites_available / default中的文档根目录。 我偶然安装了第一个apache2,然后灯,我认为还安装了apache2所以也许可能有一些错误configuration,由于这一点? 我已经重新启动apache和电脑,但无济于事。 localhost-server-folder总是将php.ini加载到/etc/php5/apache2/php.ini中。 如何更改本地加载哪个php.ini文件?