2012-07-11 59 views
0

我有一个网站正在工作的MVC模式,现在我试图使用超级cookie的JavaScript的SWF文件,但服务器不提供SWF文件。在我看来,这是因为.htaccess文件。 我把它改为:swf文件不可访问,因为.htaccess

php_flag magic_quotes_gpc Off 

Options +FollowSymLinks 
RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_URI} !(.*)/$ 
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI}/ [L,R=301] 

RewriteCond %{SCRIPT_FILENAME} !-f 
RewriteCond %{SCRIPT_FILENAME} !-d 

RewriteRule ^.*$ ./index.php [NC,QSA] 

AddType application/x-shockwave-flash swf 

但swf文件仍然无法访问。我该怎么办?

回答

0

你需要一个例外添加到重写条件允许的SWF文件以及可能的SWF文件在

我用简单的MVC网站下面允许直接访问该文件夹直接访问我不想要的文件或文件夹在发动机MVC处理:

RewriteCond $1 !^(controller\.php|script\.php|images|css|js|forum|pdfs|xmls|pdf|robots|.*.swf) 
RewriteRule ^(.*)$ /controller.php/$1 [L] 

我想对你最后的重写规则应具备的条件是这样的:

RewriteCond $1 !^(.*.swf) 
RewriteRule ^(.*)$ ./index.php [NC,QSA] 

您可能需要阅读mod_rewrite文档。 http://httpd.apache.org/docs/current/mod/mod_rewrite.html 或看mod_rewrite的一些教程 http://www.sitepoint.com/guide-url-rewriting/