30种Bootstrap免费响应式设计模板

最近准备利用bootstrap做一个站点展示页面,于是上网搜索了一下相关的模板页面
这不 上网就搜索了一些免费响应式设计模板出来了~~
所有这些主题都是免费的,有针对Web项目或者是与WordPress或Joomla链接的项目,所有这些主题都响应式的(RWD: Responsive Web Design),他们可与任何移动设备完全兼容。


免费 Bootbusiness

 

free-Bootstrap-Templates-1

 

免费的响应式HTML模板: Andia

 

free-Bootstrap-Templates-2

 

Readable (Free)

 

free-Bootstrap-Templates-3

 

Charisma – free, 响应式管理模板responsive admin template

 

free-Bootstrap-Templates-4

 

Tonic – 免费的Twitter Bootstrap WordPress主题

 

free-Bootstrap-Templates-5

 

Roots 主题

 

free-Bootstrap-Templates-6

 

WordPress Bootstrap 主题

 

free-Bootstrap-Templates-7

 

Myway – 单页视差视网膜模板Onepage Bootstrap Parallax Retina Template

 

free-Bootstrap-Templates-8

 

Statti – 响应式Responsive Bootstrap 动画模板

 

free-Bootstrap-Templates-9

 

Detroit – Bootstrap单页网站模板

 

free-Bootstrap-Templates-10

 

YellowProject Bootstrap 响应式模板

 

free-Bootstrap-Templates-11

 

Frenzy – 响应式 Bootstrap 模板

 

free-Bootstrap-Templates-12

 

Decision – Bootstrap 响应式模板

 

free-Bootstrap-Templates-13

 

Moonrise bootstrap html 模板

 

free-Bootstrap-Templates-14

 

TilesTheme – Bootstrap 商业模板

 

free-Bootstrap-Templates-15

 

SmartBox – 响应式 Bootstrap 商业主题

 

free-Bootstrap-Templates-16

 

Pixel – Responsive Bootstrap HTML5

 

free-Bootstrap-Templates-17

 

Snowflake | Responsive Bootstrap 网站模板

 

free-Bootstrap-Templates-18

 

Capture – Responsive Bootstrap HTML Theme

 

free-Bootstrap-Templates-19

 

Success – Bootstrap Responsive HTML Template

 

free-Bootstrap-Templates-20

 

Alfie – Responsive Bootstrap Html Template

 

free-Bootstrap-Templates-21

 

Argo – Modern OnePage Bootstrap Metro UI Template

 

free-Bootstrap-Templates-22

 

Flati – Responsive Flat Design Bootstrap Template

 

free-Bootstrap-Templates-23

 

Artix – One Page Responsive Bootstrap Template

 

free-Bootstrap-Templates-24

 

Superweb | HTML5 Bootstrap Website Template

 

free-Bootstrap-Templates-25

 

Esatto – One Page Responsive Bootstrap Template

 

free-Bootstrap-Templates-26

 

Landlr – The All-in-One Landing Page – Bootstrap

 

free-Bootstrap-Templates-27

 

Grepfrut Responsive Software HTML Template

 

free-Bootstrap-Templates-29

 

Porto – Responsive HTML5 Template

 

free-Bootstrap-Templates-30

 

Tango – Responsive HTML5 Template

 

free-Bootstrap-Templates-31

HTTPD启动绑定端口失败

问题描述:

在apache中绑定非http标准端口时,一直出现如下的错误提示:

[root@localhost ~]# /etc/init.d/httpd start
Starting httpd: (13)Permission denied: make_sock: could not bind to address 0.0.0.0:8087
no listening sockets available, shutting down
Unable to open logs

原因分析:

该问题是由SELinux 引起的

解决方案:

 

1、快速解决,修改selinux级别(不推荐)

vi /etc/sysconfig/selinux 
SELINUX=enforcing =>SELINUX=disabled 
reboot

 

2、从根本上解决(推荐)

根据自己的需求在selinux中添加需要指定的端口
前提需要先安装semanage(Centos6.0默认没有安装该应用)
a)安装方式如下:

[root@localhost /]# yum provides /usr/sbin/semanage
[root@localhost /]# yum whatprovides /usr/sbin/semanage
[root@localhost /]# yum -y install policycoreutils-python
[root@localhost /]# semanage

b)使用semanage添加apache侦听的端口

查看现在的支持http的端口有哪些

[root@localhost /]# semanage port -l|grep http 
为http服务添加新的端81 

[root@localhost /]# semanage port -a -t http_port_t -p tcp 81 
查看添加的结果 

[root@localhost /]# semanage port -l|grep http

 

WordPress启动初始化过程

wordpress是免费开源的用php开发的博客平台,功能十分强大,中文友好,使用mysql数据库,安装非常方便。但是功能强大的同时也带来笨重、繁琐的感觉。

这里尝试分析解读下wordpress的源码,也作为自己学习php的笔记。PS:php开发工具推荐zend studio。

访问wordpress博客,默认定位到index.php文件,打开index.php,代码非常简单,就两行:[codesyntax lang=”php”]

define('WP_USE_THEMES', true);
require('./wp-blog-header.php');

[/codesyntax]

第一行定义WP_USR_THEMES常量的值为true,第二行包含并运行文件wp-blog-header.php。打开wp-blog-header.php文件,代码也非常简单:[codesyntax lang=”php”]

if ( !isset($wp_did_header) ) {
    $wp_did_header = true;
    require_once( dirname(__FILE__) . '/wp-load.php' );
    wp();
    require_once( ABSPATH . WPINC . '/template-loader.php' );
}

[/codesyntax]

首先检测$wp_did_header是否设置,由于是首次执行,没有设置,进入if语句。定义$wp_did_header变量,然后包含并运行当前目录下的wp-load.php文件。__FILE__取得当前文件的路径和文件名,然后dirname()函数取得当前路径。这里将剩下代码入栈1->wp-blog-header.php。

进入wp-load.php文件,压入栈方便记忆1.wp-load.php->2.wp-blog-header.php。这个文件主要用于设置绝对路径常量,加载wp-config.php文件,进而加载wp-setting.php文件,来建立起wordpress的变量信息。如果wp-config.php没有找到,会要求安装者手动进行一些设置。看一下wp-load.php源码:[codesyntax lang=”php”]

define( 'ABSPATH', dirname(__FILE__) . '/' );
error_reporting( E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING | E_RECOVERABLE_ERROR );
if ( file_exists( ABSPATH . 'wp-config.php') ) {
    require_once( ABSPATH . 'wp-config.php' );
} elseif ( file_exists( dirname(ABSPATH) . '/wp-config.php' ) && ! file_exists( dirname(ABSPATH) . '/wp-settings.php' ) ) {

    require_once( dirname(ABSPATH) . '/wp-config.php' );
} else {
    // A config file doesn't exist
    // Set a path for the link to the installer
    if ( strpos($_SERVER['PHP_SELF'], 'wp-admin') !== false )       $path = 'setup-config.php';
    else
            $path = 'wp-admin/setup-config.php';
    define( 'WPINC', 'wp-includes' );
    define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' );
    require_once( ABSPATH . WPINC . '/load.php' );
    require_once( ABSPATH . WPINC . '/version.php' );
    wp_check_php_mysql_versions();
    wp_load_translations_early();
    require_once( ABSPATH . WPINC . '/functions.php' );
    // Die with an error message
    $die  = __( "There doesn't seem to be a <code>wp-config.php</code> file. I need this before we can get started." ) . '</p>';
    $die .= '<p>' . __( "Need more help? <a href='http://codex.wordpress.org/Editing_wp-config.php'>We got it</a>." ) . '</p>';
    $die .= '<p>' . __( "You can create a <code>wp-config.php</code> file through a web interface, but this doesn't work for all server setups. The safest way is to manually create the file." ) . '</p>';
    $die .= '<p><a href="' . $path . '" class="button">' . __( "Create a Configuration File" ) . '</a>';

    wp_die( $die, __( 'WordPress &rsaquo; Error' ) );
}

[/codesyntax]

设置常量ABSPATH,error_reporting()函数设置php的报错级别。然后尝试加载wp-config.php文件,由于wordpress已经成功安装,该文件一般是存在的。

进入wp-config.php文件,压栈1.wp-config.php–>2.wp-load.php–>3.wp-blog-header.php。这个文件是wordpress的配置文件,包含数据库等一些信息。

设置数据信息:[codesyntax lang=”php”]

define('DB_NAME', 'wordpress');//数据库名    
define('DB_USER', 'root');//数据库用户名
define('DB_PASSWORD', 'toor');//数据库密码
define('DB_HOST', 'localhost');//数据库主机
define('DB_CHARSET', 'utf8');//数据库字符编码格式

[/codesyntax]

随后是define一些身份密钥,不再解释。设置数据库表前缀和wordpress的语言:[codesyntax lang=”php”]

$table_prefix  = 'wp_';
define('WPLANG', 'zh_CN');

[/codesyntax]

最后开启开发者模式,最后加载wp-setting.php文件。压栈1.wp-setting.php–> 2.wp-load.php->3.wp-blog-header.php。

wp-setting.php主要来设置wordpress运行的一些变量和库文件。[codesyntax lang=”php”]

require( ABSPATH . WPINC . '/load.php' ); //加载load.php
require( ABSPATH . WPINC . '/default-constants.php' );
require( ABSPATH . WPINC . '/version.php' );

[/codesyntax]

wp-setting.php又加载上面三个php文件,分别进去查看。load.php声明了wordpress需要的很多函数,没有什么动作执行。default-constants.php声明了一些可以被重写的函数。version.php定义了wordpress需要的组件的版本信息。

然后是调用load.php,default-constants.php中的函数,如下[codesyntax lang=”php”]

wp_initial_constants( );//初始化wordpress的一些信息,如内存大小、调试模式和cache情况等

wp_check_php_mysql_versions();//检查本地的mysql是否符合要求

// Disable magic quotes at runtime. Magic quotes are added using wpdb later in wp-settings.php.禁用魔法引号
@ini_set( 'magic_quotes_runtime', 0 );
@ini_set( 'magic_quotes_sybase',  0 );

// Set default timezone in PHP 5.设置时区
if ( function_exists( 'date_default_timezone_set' ) )
    date_default_timezone_set( 'UTC' );

// Turn register_globals off.
wp_unregister_GLOBALS();

// Ensure these global variables do not exist so they do not interfere with WordPress.
unset( $wp_filter, $cache_lastcommentmodified );

// Standardize $_SERVER variables across setups.
wp_fix_server_vars();

// Check if we have received a request due to missing favicon.ico
wp_favicon_request();

// Check if we're in maintenance mode.
wp_maintenance();

// Start loading timer.
timer_start();

// Check if we're in WP_DEBUG mode.
wp_debug_mode();

// 加载cache文件
if ( WP_CACHE )
    WP_DEBUG ? include( WP_CONTENT_DIR . '/advanced-cache.php' ) : @include( WP_CONTENT_DIR . '/advanced-cache.php' );

// 设置语言文件路径
wp_set_lang_dir()

[/codesyntax]

后面又加载了一些php文件:[codesyntax lang=”php”]

require( ABSPATH . WPINC . '/compat.php' );//兼容之前的版本,声明一些可能不存在的函数
require( ABSPATH . WPINC . '/functions.php' );//声明了大量的函数,wordpress的函数几乎都在里面
require( ABSPATH . WPINC . '/class-wp.php' );//声明wordpress的类,main就是在这里声明的
require( ABSPATH . WPINC . '/class-wp-error.php' );//声明了错误处理的函数
require( ABSPATH . WPINC . '/plugin.php' );//获取插件信息
require( ABSPATH . WPINC . '/pomo/mo.php' );//mo语言库

[/codesyntax]

class-wp.php文件中声明的主函数:[codesyntax lang=”php”]

function main($query_args = '') {
        $this->init();//初始化环境
        $this->parse_request($query_args);//解析请求
        $this->send_headers();
        $this->query_posts();
        $this->handle_404();
        $this->register_globals();
        do_action_ref_array('wp', array(&$this));
    }

[/codesyntax]

这些函数都是通过wp-blog-header.php中的wp()函数调用。后面wp-setting.php文件又初始化了一些全局变量,初始化了WP对象,并初始化。[codesyntax lang=”php”]

$wp = new WP();
$wp->init();

[/codesyntax]

回到wp-load.php文件。这是wp-config.php文件存在的情况,如果wordpress安装不完全造成该文件不存在,就会进入elseif流程,elseif中首先判断wp-config.php是否存在父目录中,如果父目录不是wordpress的另一个安装版本,就从父目录加载wp-config.php。

最后进入else流程,没有找到wp-config.php文件,因为wp-config.php文件包含了数据库等必不可少的信息,所以程序无法进行下去,就要求用户重新设置wp-config.php文件。[codesyntax lang=”php”]

if ( strpos($_SERVER['PHP_SELF'], 'wp-admin') !== false )
        $path = 'setup-config.php';
    else
        $path = 'wp-admin/setup-config.php';

    define( 'WPINC', 'wp-includes' );
    define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' );
    require_once( ABSPATH . WPINC . '/load.php' );
    require_once( ABSPATH . WPINC . '/version.php' );

    wp_check_php_mysql_versions();
    wp_load_translations_early();

    require_once( ABSPATH . WPINC . '/functions.php' );

[/codesyntax]

首先判断当前路径是否为wp-admin,$_SERVER[‘PHP_SELF’]用来取得当前运行脚本的路径和文件名,strpos()函数取得指定字符串的位置。总之这几行代码的作用就是要加载wp-admin/setup-config.php文件,来重新生成wp-config.php文件。setup-config.php文件就是展现安装时让你填写数据库信息的页面:

 

对于安装过程,不再多说。wp-load.php完毕,回到wp-blog-header.php文件,调用WP()函数,进而调用wp-class.php中的main函数。[codesyntax lang=”php”]

$this->parse_request($query_args);

[/codesyntax]

上面的函数就是个死循环函数,不断地接受浏览器的请求,进行解析。

VPS增加SWAP

最近入手了一台阿里云的VPS 经过测试,性能挺好,速度也挺快,要备案是个杯具,反正不能开站,拿来折腾是不错的!

安装好LNMPA,打开探针,发现根本没有SWAP区(虚拟内存)。

SWAP

虽然说有512MB的物理内存,但是在必要时刻,虚拟内存还是有用的,Windows的虚拟内存可以自行设定,那么Linux不可能不行吧,于是发挥我的DIY精神,自己动手添加SWAP区(虚拟内存)!

虚拟内存,就是把内存设在硬盘上,那就要用硬盘的空间,现在的VPS一般都至少有10GB硬盘的。我的阿里云就有40GB。

于是用“开玩笑”的方法,把未使用的空间给挂载到/home上:Xen Linux VPS硬盘挂载教程(重装系统不丢数据) (已挂载硬盘或者使用已有空间的可以忽略)

挂载完成后,分别用:
[codesyntax lang=”bash”]
fdisk -l
df -l
[/codesyntax]

可以看见已成功挂载到/home/

进入hone目录,执行一下命令创建一个名为”iprayz”的512MB大的SWAP(此步骤可能有点慢,需要等一下)。
[codesyntax lang=”bash”]
cd /home
dd if=/dev/zero of=iprayz bs=1024 count=524288
[/codesyntax ]

说明:

of=iprayz的iprayz是swap文件的名称,可以自行修改,但是下文执行的命令中也要相对应的修改该名称。

bs=1024的1024是指每个扇区占用1024Byte,也就是1KB。一般不用修改。

count=524288的524288指的是SWAP文件大小。计算方法如下:512MB有512个1024KByte,512*1024=524288,524288刚刚好是512MB。如果要设置为1GB的话,那就是有1024个1024KB,1024*1024=1048576,那就把524288改成1048576。如果是256MB,那就是有256个1024KB,256*1024=262144,那就把524288改成262144!以此类推!

执行完上面那步后,执行以下代码(打了颜色的部分代码代表如果你在执行上文代码时改了,就要相对应的进行修改):

创建swap文件:
[codesyntax lang=”bash”]
/sbin/mkswap iprayz
[/codesyntax ]

激活swap文件:
[codesyntax lang=”bash”]
/sbin/swapon iprayz
[/codesyntax ]

检查swap是否正确:
[codesyntax lang=”bash”]
/sbin/swapon -s
[/codesyntax ]
返回如下结果,表示成功:

虽然SWAP区已成功启用,但是重启后又会消失,因此需要设置开机自动启用SWAP:

使用vim或者SFTP工具修改 /etc/fstab

vim工具:#vim /etc/fstab

在末尾添加如下内容:
[codesyntax lang=”bash”]
/home/iprayz swap swap defaults 0 0
[/codesyntax ]
如图:

修改完成后,保存,进行重启:
[codesyntax lang=”bash”]
reboot
[/codesyntax ]
重启完成后,查看空闲的内存:
[codesyntax lang=”bash”]
free -m
[/codesyntax ]

可以看到SWAP的大小已经相对应的增加了!使用PHP探针,也看到SWAP区了:

PHP探针

为了测试SWAP区是否可用,我特意用VNC在VPS上使用Qemu运行Windows耗费RAM:

从PHP探针可以看到,SWAP区已相对应地使用了一部分:

PHP探针

到这一步,就表示你大功告成了!!!

如果要停用此SWAP,也很简单:
[codesyntax lang=”bash”]
swapoff /home/iprayz
[/codesyntax ]
如果要删除的话,可以直接执行:
[codesyntax lang=”bash”]
rm -rf /home/iprayz
[/codesyntax ]
当然,也要相对应地对/etc/fstab进行修改了!

本文参考至: Micro Universe

nginx错误:File Not Found

使用php-fpm解析PHP,”No input file specified”,”File not found”是令nginx新手头疼的常见错误,原因是php-fpm进程找不到SCRIPT_FILENAME配置的要执行的.php文件,php-fpm返回给nginx的默认404错误提示。

比如我的网站doucument_root下没有test.php,访问这个文件时通过抓包可以看到返回的内容。

HTTP/1.1 404 Not Found
Date: Fri, 21 Dec 2012 08:15:28 GMT
Content-Type: text/html
Proxy-Connection: close
Server: nginx/1.2.5
X-Powered-By: PHP/5.4.7
Via: 1.1 c3300 (NetCache NetApp/6.0.7)
Content-Length: 16

File not found.

很多人不想用户直接看到这个默认的404错误信息,想自定义404错误.

给出解决办法前我们来先分析下如何避免出现这类404错误,然后再说真的遇到这种情况(比如用户输入一个错误不存在的路径)时该怎么办,才能显示自定义的404错误页。

一、错误的路径被发送到php-fpm进程

出现这类错误,十个有九个是后端fastcgi进程收到错误路径(SCRIPT_FILENAME),而后端fastcgi收到错误路径的原因大都是配置错误。

常见的nginx.conf的配置如下:
[codesyntax lang=”php”]

server {
    listen   [::]:80;
    server_name  example.com www.example.com;
    access_log  /var/www/logs/example.com.access.log;  

    location / {
        root   /var/www/example.com;
        index  index.html index.htm index.pl;
    }

    location /images {
        autoindex on;
    }

    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www/example.com$fastcgi_script_name;
        include fastcgi_params;
    }
}

[/codesyntax ]
这个配置中有很多不合理的地方,其中一个明显的问题就是root指令被放到了location / 块。如果root指令被定义在location块中那么该root指令只能对其所在的location生效。其它locaiont中没有root指令,像location /images块不会匹配任何请求,需要在每个请求中重复配置root指令来解决这个问题。因此我们需要把root指令放在server块,这样各个location就会继承父server块定义的$document_root,如果某个location需要定义一个不同的$document_root,则可以在location单独定义一个root指令。

另一个问题就是fastCGI参数SCRIPT_FILENAME 是写死的。如果修改了root指令的值或者移动文件到别的目录,php-fpm会返回“No input file specified”错误,因为SCRIPT_FILENAME在配置中是写死的并没有随着$doucument_root变化而变化,我们可以修改SCRIPT_FILENAME配置如下:

[codesyntax lang=”php”]
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
[/codesyntax ]

所以我们不能忘记在server块中配置root指令,不然$document_root的值为空,只会传$fastcgi_script_name到php-fpm,这样就会导致“No input file specified”错误。

二、请求的文件真的不存在

当nginx收到一个不在的.php文件的请求时,因为nginx只会检查$uri是否是.php结尾,不会对文件是否存在进行判断,.php结尾的请求nginx会直接发给php-fpm处理。php-fpm处理时找不到文件就会返回“No input file specified”带着“404 Not Found”头。

解决办法:

我们在nginx拦截不存在的文件,请求并返回自定义404错误

使用 try_files 捕捉不存在的urls并返回错误。
[codesyntax lang=”php”]

location ~ .php$ {
 try_files $uri =404;
 fastcgi_pass 127.0.0.1:9000;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME ....
 ...................................
 ...................................
}

[/codesyntax ]
上面的配置会检查.php文件是否存在,如果不存在,会返回404页面。

 

本文参考至:  运维与架构

WordPress添加豆瓣音乐

有的同学也许会和我一样,很喜欢用豆瓣FM来听歌。
恩!有种上学时听收音机的感觉,而且豆瓣会更具你的习惯推荐歌曲,很不错!

豆瓣fm

其实这个实现非常简单:

  • 新建文章或者页面
  • 转到【文本】模式下编辑
  • 添加如下代码

wenben-douban

以下是插入的代码:

[codesyntax lang=”html4strict”]

 <iframe name="iframe_canvas" 
src="http://douban.fm/partner/baidu/doubanradio" 
scrolling="no" frameborder="0" width="420" height="190"></iframe>

[/codesyntax]

效果预览:

WordPress文章部分内容回复可见代码

WordPress插件无穷多,但是插件在方便的同时,也给我们带来了另一个难题:插件过多会导致网页速度变慢,影响用户体验。

因此对于网络上利用easy2hide插件实现文章部分内容回复可见的功能,我不是很感冒。因此我想能不能利用代码来实现这一功能呢?

在不懈的搜索和尝试下,我找到并稍微改进了能实现此功能的代码,使其更美观。不敢私藏,贡献出来欢迎大家拍砖:

[codesyntax lang=”php”]

//文章内容回复可见   
 function reply_to_read($atts, $content=null) {   
 	extract(shortcode_atts(array("notice" => '

<温馨提示:为统计浏览次数等原因,本处内容待您评论本文后刷新即可查看,请谅解!>  

‘), $atts));
$email = null;
$user_ID = (int) wp_get_current_user()->ID;
if ($user_ID > 0) {
$email = get_userdata($user_ID)->user_email;
//对博主直接显示内容
$admin_email = “fredpan@188.com”; //博主Email
if ($email == $admin_email) {
return $content;
}
} else if (isset($_COOKIE[‘comment_author_email_’ . COOKIEHASH])) {
$email = str_replace(‘%40’, ‘@’, $_COOKIE[‘comment_author_email_’ . COOKIEHASH]);
} else {
return $notice;
}
if (empty($email)) {
return $notice;
}
global $wpdb;
$post_id = get_the_ID();
$query = “SELECT `comment_ID` FROM {$wpdb->comments} WHERE `comment_post_ID`={$post_id} and `comment_approved`=’1′ and `comment_author_email`='{$email}’ LIMIT 1”;
if ($wpdb->get_results($query)) {
return do_shortcode($content);
} else {
return $notice;
}
}

add_shortcode(‘reply’, ‘reply_to_read’);

[/codesyntax]

其中,博主的eMail需要设置自己的地址,博主可以不用回复就可见。
您也可以在style.css中添加以下代码实现您想要的效果:

[codesyntax lang=”css”]

.reply-to-read{   
 background: #BDBDBD;   
 color: #000000;   
 font-family: Times New Roman, Georgia, Trebuchet MS;   
 font-size: 15px;   
 font-style: normal;   
 margin: 10px 5px 15px 20px;   
 padding: 10px 5px 10px;   
 line-height: normal;   
 }

[/codesyntax]

将需要隐藏的内容用[@reply]包裹,编辑文章时,添加:

[@reply]你希望评论回复可见的内容[@/reply]
或者
[@reply notice=”自定义提醒回复内容”]自定义提醒回复内容[@/reply]

说明:使用时去掉@

本文参考至:北极宫

设置常见站点视频分享

现在很多视频站点上都提供了分享的功能,在进行收集转载的过程中,很多朋友会禁止FLV、SWF等视频文件自动播放,但在某些情况下也有些人需要让他们自动播放。
今天总结了一下,针对不同站点提供的视频分享,让其能根据自己喜好来进行播放是否自动的设定。

 

搜狐视频自动播放详解

自动播放:

<embed src="http://news.sohu.com/player/20091120/Main.swf" flashVars="type=Singleton&domain=inner&skin=0&flv=http://data.vod.sohu.com/20090605/4dc649f4-b8c8-44b0-a01e-9e9befb32ac4V.mp4&cover=&autoPlay=true&recommend=http://s.sohu.com/tv_tuijian.html&pageUrl=http://tv.sohu.com/20090605/n264359598.shtml" quality="high" bgcolor="#000000" width="510" height="420" allowFullScreen="true" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />

不自动播放:

<embed src="http://news.sohu.com/player/20091120/Main.swf" flashVars="type=Singleton&domain=inner&skin=0&flv=http://data.vod.sohu.com/20090605/4dc649f4-b8c8-44b0-a01e-9e9befb32ac4V.mp4&cover=&autoPlay=false&recommend=http://s.sohu.com/tv_tuijian.html&pageUrl=http://tv.sohu.com/20090605/n264359598.shtml" quality="high" bgcolor="#000000" width="510" height="420" allowFullScreen="true" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />

优酷视频自动播放详解

不自动播放:

http://player.youku.com/player.php/sid/XNDA3OTM4NA==/v.swf

自动播放:

http://player.youku.com/player.php/sid/XNDA3OTM4NA==/p/1.swf

代码修改:将原始地址中的v换成p/1。

也可以直接加上参数来进行修改
加上自动播放参数isAutoPlay=true,使用&连接。
如原始地址:

http://player.youku.com/player.php/sid/XNDA3OTM4NA==/v.swf。

播后地址:

http://static.youku.com/v1.0.0270/v/swf/qplayer.swf?VideoIDS=XNDA3OTM4NA==&embedid=-&showAd=0

1、经修改后,能自动播放,不显示相关视频,不插播广告的地址:

http://static.youku.com/v/swf/qplayer.swf?VideoIDS=XNDA3OTM4NA=&isAutoPlay=true&isShowRelatedVideo=false&embedid=-&showAd=0

2、如果有的朋友想将这段视频以MP3的格式出现贴子中,那么就用下面这段代码来实现吧,同样只需将绿色部分的代码替换就OK了,非常简单实用,最重要是可加入在空间、博客做为背景音乐。

http://static.youku.com/v/swf/qplayer.swf?VideoIDS=XNDA3OTM4NA=&isAutoPlay=true&isShowRelatedVideo=false&embedid=-&showAd=0#.mp3

注意变化,后缀已变成.mp3;其中,isShowRelatedVideo=false:不显示相关视频,showAd=0:不显示广告。
这时就可用我们平时习惯用的自动播放的代码,直接把地址贴进去,这样很方便得到后缀为.MP3的视频地址了。其实,这个方法只是换了个播放器而已,给了我们一个是MP3播放器的假象。

[color=#8FBC8F][MUSIC]http://static.youku.com/v/swf/qplayer.swf?VideoIDS=XNDA3OTM4NA=&isAutoPlay=true&isShowRelatedVideo=false&embedid=-&showAd=0#.mp3[/MUSIC]][/color]

如果想要控制声音、进度或者*,还需要用鼠标拉动视频上的那个露出部分很少的工具条。
在原始地址的【=】和【/v】之间,加入“&isAutoPlay=true”。
如原始地址:

http://player.youku.com/player.php/sid/XNDA3OTM4NA==/v.swf

那么在=和/v之间,加入“&isAutoPlay=true”,就得到了可以自动播放的视频地址:

http://player.youku.com/player.php/sid/XNDA3OTM4NA==&isAutoPlay=true/v.swf

56视频播放

56视频有两种,一种是相册视频,如:
相册FLASH地址:http://www.56.com/deux_83949727.swf,这个地址不能自动播放,将地址中的deux改成p2,得到自动播放的地址:http://www.56.com/p2_83949727.swf。
另一种是视频,如:
视频的FLASH地址:

http://www.56.com/n_v41_/c24_/28_/18_/xuhui8491_/zhajm_124019538955_/226000_/0_/42719013.swf

这个地址不能自动播放,需要对原始地址进行修改:
1、打开这个视频FLASH地址:

http://www.56.com/n_v41_/c24_/28_/18_/xuhui8491_/zhajm_124019538955_/226000_/0_/42719013.swf

其目的是通过打开视频,看看出现的地址有没有变化,如地址没有变化,再换一种方法打开,直至出现的地址发生了变化。
打开视频地址的方法很多,如将地址粘贴到浏览器中打开,或将地址写入你的博客日记、QQ空间日记、word文档中打开。
本人是通过IE浏览器打开的,在浏览器地址栏出现的地址是:

http://www.56.com/flashApp/56.swf?img_host=v41.56.com&host=c24.56.com&pURL=28&sURL=18&user=xuhui8491&URLid=zhajm_124019538955&totaltimes=226000&effectID=0&flvid=42719013&56.swf

2、将打开后地址中的【flashApp/56.swf?】改成【flashApp/v_player_site_wide.swf?】即可得到可自动播放的地址。如下所示:

http://www.56.com/flashApp/v_player_site_wide.swf?img_host=v41.56.com&host=c24.56.com&pURL=28&sURL=18&user=xuhui8491&URLid=zhajm_124019538955&totaltimes=226000&effectID=0&flvid=42719013&56.swf

不过这个地址带有符号&,而QQ群空间*的FLASH中不能有这个符号,所以56视频仍然不能在QQ群空间里自动播放。

优酷视频播放

不自动播放:

http://player.youku.com/player.php/sid/XMTk1NTU2/v.swf/

自动播放:

http://player.youku.com/player.php/sid/XMTk1NTU2/p/1.swf/

代码变化:就是将SRC地址中的v改为p/1。(更多方法)。
例如,将

<embed src="http://player.youku.com/player.php/sid/XMTk1NTU2/v.swf/" quality="high" width="550" height="372"align="middle"type="application/x-shockwave-flash" />

修改为:

<embed src="http://player.youku.com/player.php/sid/XMTk1NTU2/p/1.swf/"quality="high"width="550" height="372"align="middle"type="application/x-shockwave-flash" />

利用优酷播放流畅的优点,设置width=”0″height=”0″就可以将其作为背景音乐播放器。
当然其中还是有弊病的,只能单曲播放。

土豆视频自动播放详解

1、在土豆网站找到相应的视频点开播放,在视频下面找到”贴到blog或BBS”,点击之后会出现三段代码;
2、复制第二段代码,即中间的FLASH播放器的地址:http://www.tudou.com/v/w3_GYw5nZAA。
把它打到浏览器的地址栏里,回车;
3、在地址栏会出现新地址,类似http://www.tudou.com/player/outside/player_outside.swf?iid=32179354&……。
4、将以上其中蓝色部分&……删除,将红色部分【/outside/player_outside.swf?】改成【/skin/plu.swf?】,其他保持不变。
5、地址改完,得到新的FLASH地址:

http://www.tudou.com/player/skin/plu.swf?iid=32179354

这样放在空间上就可以自动播放了。

酷6视频自动播放详解

不自动播放:

http://player.ku6.com/refer/nvGjdBHTKUWXgnNF/v.swf

自动播放:

http://player.ku6.com/refer/nvGjdBHTKUWXgnNF/v.swf&auto=1

代码变化:就是自动的多加&auto=1。

6间房视频自动播放详解

1、复制6间房的视频代码:

http://6.cn/p/r77SFhn7vd/lKf5HxWeXpQ.swf

2、在浏览器回车得到新地址:

http://6.cn/player.swf?vid=r77SFhn7vd/lKf5HxWeXpQ

3、6间房的视频播放器是:http://6.cn/player.swf?flag=1&vid=/qg在这个播放器中加上视频ID。
将视频播放器中的vid=/qg改成:vid=r77SFhn7vd/lKf5HxWeXpQ/qg。
改后的自动播放地址是:

http://6.cn/player.swf?flag=1&vid=r77SFhn7vd/lKf5HxWeXpQ/qg

 

新浪视频自动播放详解

方法一:

不自动播放:

http://p.you.video.sina.com.cn/player/outer_player.swf?auto=1&vid=6282441&uid=1305882283

自动播放

:http://p.you.video.sina.com.cn/player/outer_player.swf?autoplay=1&vid=6282441&uid=1305882283

代码变化:就是将auto=1改成autoplay=1。

方法二:

1、复制新浪视频的Flash地址如下:。

http://p.you.video.sina.com.cn/player/outer_player.swf?auto=1&vid=14050847&uid=1261788454

2、将以上地址中的红色部分【player/outer_player.swf?auto=1&】改成【swf/lb_player.swf?】,&vid=视频序列号;。
就得到了自动播放地址如下:。

http://p.you.video.sina.com.cn/swf/lb_player.swf?vid=14050847-1261788454

其实,对于不同的新浪视频,只要修改下面地址中的视频序列号(红色),就得到了自动播放地址!。

http://p.you.video.sina.com.cn/swf/lb_player.swf?vid=14050847-1261788454

Youtube视频自动播放

自动播放:

http://www.youtube.com/v/Lg1IjwKA0oc&autoplay=1

不自动播放:

http://www.youtube.com/v/Lg1IjwKA0oc&autoplay=1

代码变化:就是自动的多加&autoplay=1。

Mofile视频自动播放详解

Mofile网站的视频,提供了视频自动播放代码。可勾起视频播放器下的“自动播放”小方框,就出现了自动播放代码。
在这个网站上的视频代码,不自动播放的代码的链接地址后面比自动播放代码多了“&autoplay=0”,如你想要自动播。
放的,只要把不自动播放代码的这个多余的后缀去掉就行啦。详情请点此处。
例如,雪中情歌曲的不自动播放播放代码:

<EMBED src=http://tv.mofile.com/cn/xplayer.swfwidth=480height=400type=application/x-shockwave-flashFlashVars="v=8WQ6BK9E&p=/support/UploadFiles_4906/200906/20090607155408337.jpg &autoplay=0&nowSkin=0_0"allowScriptAccess="sameDomain"wmode="transparent"/>

总结起来,很多网站的视频播放代码都是大同小异,我们可以根据里面的参数如true/false来测试运行一下,Dreamweaver里面也有自动工具可以供大家测试使用!

 

解决主机500错误

使用主机有时候登陆网站的时候会出现“Internal Server Error,500 error”。经上网搜索,发现出现该种情况通常有以下三种可能:

1.服务器资源超载

如果你没对网站文件做过什么更改的话,最有可能的是同服务器的资源超载:即同一时间内处理器有太多的进程需要处理的时候,会出现500错误。借助SSH,可以在命令行中输入以下命令查看:

ps faux
ps faux |grep <em>username</em>

如果你查到某个进程消耗过多资源,可以用kill命令强制关闭这个进程,只需输入该进程的进程号(Pid):

kill -9 <em>pid</em>

2.文件权限设置错误

500错误还有可能是对文件设置了不正确的权限:

后台目录和文件的权限默认应该是755,而图片,文字等html文件应该是644。所以如果在刚刚上传文件后出现500错误,应该主要检查文件权限设置。

可以使用FTP软件选中所有文件,然后批量修改文件权限。也可以在SSH中更改相应的权限…

chmod 644 [filename]

3 .htaccess文件写入错误的代码

在使用某些wordpress SEO插件的时候,插件会改写.htacess文件,如果语法错误的话就有可能造成500错误!

在.htaccess文件中,可能因为添入了一些与源文件冲突的代码。所以为了检测到错误语句,最好的方法是为语句添加注释来逐条验证。因为注释之后,语句就不再起作用。

逐条添加“#”在语句前面,如

DirectoryIndex default.html
AddType application/x-httpd-php5 php

你可以添加#到该命令前,从而实现注释效果:

DirectoryIndex default.html
#AddType application/x-httpd-php5 php

这个方法可以迅速定位错误的命令,如果你找不到错误的段落,可以尝试把所有的命令全部添上注释然后反过来逐条删除#检查错误!判断出错误语句之后,可以删掉#恢复正常!