SEO新手必看基础:URL优化之URL长度

URL优化就是指通过对URL各组成部分进行适当的调整,以提高URL搜索引擎的友好性。

它包括三部分:

第一,对域名、目录、文件的命名;

第二,分隔符的使用;

第三URL长度及关键字词频的控制。这三部分相互制约、相互影响。在优化的过程中,我们必须掌握这三部分的内在联系,对各个部分进行充分的协调,这样才能达到最佳优化效果,否则将功败垂成。

SEO优化

URL优化是网站优化的六大重要环节之一,占据着重要的地位,不仅在决定页面相关性方面起着重要的作用,更重要的是URL还会直接影响搜索引擎对页面的收录。

搜索引擎在抓取页面的时候,对于页面的URL长度会存在一定的限制,对于超过限定长度的URL所指向的页面,搜索引擎就可以放弃收录,决定URL长度的主要因素包括域名的长度、路径长度、文件名长度。简单描述几点:

    
    1. 域名长度
    域名长度是指“子域名”“域名名称”“域名类型”所占用的字符数,例如:www.luzirq.com子域名是www.域名是luzirq.com,域名类型com,则域名长度14.
   
    2. 路径长度
    路径长度是指文件存放在路径的名称所占用的字符数,路径长度=目录名称长度+目录2名称长度+…+目录N名称长度。
  
    3. 文件名长度
    文件名长度是指文件名称所占用的字符数,例如:www.luzirq.com占用字符数,其文件名长度为10.
    4. URL长度
    综上述,URL程度=类型+域名长度+路径长度+文件名长度。
    5. URL长度的影响
    搜索引擎在抓取页面的时候,对页面的URL长度是有一定的限制的。对于超过这个限制的页面搜索引擎就可能会放弃收录。而且,页面的URL越短,得到的权重就越高。
假如这两个页面一样那么URL1比URL2的权重更高,在目录的深度角度考虑。URL1比URL2更浅。

URL优化

Git 常用命令整理

最近在公司的服务器上安装了Git Sever,开始从SVN转向到Git了,整理了一些在Git常用的命令。

取得Git仓库

初始化一个版本仓库

git init

Clone远程版本库

git clone git@xbc.me:wordpress.git

添加远程版本库origin,语法为 git remote add [shortname] [url]

git remote add origin git@xbc.me:wordpress.git

查看远程仓库

git remote -v

提交你的修改

添加当前修改的文件到暂存区

git add .

如果你自动追踪文件,包括你已经手动删除的,状态为Deleted的文件

git add -u

提交你的修改

git commit –m "你的注释"

推送你的更新到远程服务器,语法为 git push [远程名] [本地分支]:[远程分支]

git push origin master

查看文件状态

git status

跟踪新文件

git add readme.txt

从当前跟踪列表移除文件,并完全删除

git rm readme.txt

仅在暂存区删除,保留文件在当前目录,不再跟踪

git rm –cached readme.txt

重命名文件

git mv reademe.txt readme

查看提交的历史记录

git log

修改最后一次提交注释的,利用–amend参数

git commit –amend

忘记提交某些修改,下面的三条命令只会得到一个提交。

git commit –m "add readme.txt"
git add readme_forgotten
git commit –amend

假设你已经使用git add .,将修改过的文件a、b加到暂存区

现在你只想提交a文件,不想提交b文件,应该这样

git reset HEAD b

取消对文件的修改

git checkout –- readme.txt

基本的分支管理

创建一个分支

git branch iss53

切换工作目录到iss53

git chekcout iss53

将上面的命令合在一起,创建iss53分支并切换到iss53

git chekcout –b iss53

合并iss53分支,当前工作目录为master

git merge iss53

合并完成后,没有出现冲突,删除iss53分支

git branch –d iss53

拉去远程仓库的数据,语法为 git fetch [remote-name]

git fetch

fetch 会拉去最新的远程仓库数据,但不会自动到当前目录下,要自动合并

git pull

查看远程仓库的信息

git remote show origin

建立本地的dev分支追踪远程仓库的develop分支

git checkout –b dev origin/develop

Nginx实战基础篇五 如何让用户通过用户名密码认证访问我们的web站点

Nginx实战基础篇五 如何让用户通过用户名密码认证访问我们的web站点

有时我们会有这么一种需求,就是你的网站并不想提供一个公共的访问或者某些页面不希望公开,我们希望的是某些特定的客户端可以访问。那么我们可以在访问时要求进行身份认证,就如给你自己的家门加一把锁,以拒绝那些不速之客。

实验环境:

现在公司开通了一个内部使用网站为http://www.luzirq.com,要求所有人查看网页信息之前都必须要输入内定的用户名及密码方可浏览网页

http://www.luzirq.com进行测试。

http://www.luzirq.com 192.168.100.107

DNS1 192.168.100.102

一、查看当前系统参数

  1. [root@rhel6u3-2 ~]# uname –r  //查看系统内核版本号
  2. 2.6.32-279.el6.i686
  3. [root@rhel6u3-2 ~]# cat /etc/redhat-release //查看系统版本号
  4. Red Hat Enterprise Linux Server release 6.3 (Santiago)

 

二、编辑虚拟主机配置文件

 

  1. [root@rhel6u3-7 ~]# vim /usr/local/nginx/conf/nginx.conf //主配置文件中http字段中添加以下语句,将虚拟主机的配置文件指向www.luzirq.com
  2. include /usr/local/nginx/server/www.luzirq.com;
  3. [root@rhel6u3-7 ~]# vim /usr/local/nginx/server/www.luzirq.com
  4. server {
  5.      listen       80;  //监听端口为80
  6.      server_name  www.luzirq.com;  //虚拟主机网址
  7.       location / {
  8.             root   sites/www1;  //虚拟主机网站根目录
  9.             index  index.html index.htm;  //虚拟主机首页
  10.             auth_basic “secret”;  //虚拟主机认证命名
  11.             auth_basic_user_file /usr/local/nginx/passwd.db; //虚拟主机用户名密码认证数据库
  12.         }
  13.         location /status {
  14.                 stub_status on;  //开启网站监控状态
  15.                 access_log /usr/local/nginx/logs/www.luzirq.com; //监控日志
  16.                 auth_basic “NginxStatus”; }
  17.     }

 

三、通过htpasswd命令生成用户名及对应密码数据库文件。

 

  1. [root@rhel6u3-7 server]# htpasswd -c /usr/local/nginx/passwd.db username  //创建认证信息,username为认证用户名
  2. New password: *******  //输入认证密码
  3. Re-type new password: ********  //再次输入认证密码
  4. Adding password for user username
  5. [root@rhel6u3-7 server]#
  6. [root@rhel6u3-7 ~]# chmod 400 /usr/local/nginx/passwd.db  //修改网站认证数据库权限
  7. [root@rhel6u3-7 ~]# chown nginx.  /usr/local/nginx/passwd.db  //修改网站认证数据库属主和属组
  8. [root@rhel6u3-7 ~]# cat /usr/local/nginx/passwd.db  //可以看到通过htpasswd生成的密码为加密格式
  9. username:8eZAz7BqcrXmY
  10. [root@rhel6u3-7 ~]#

 

四、平滑重启nginx服务

 

  1. [root@rhel6u3-7 ~]# /etc/rc.d/init.d/nginx reload  //平滑重启nginx服务
  2. nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
  3. nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
  4. Reloading nginx:                                           [  OK  ]

 

五、DNS服务器上添加www1 A记录

 

  1. www    A   192.168.100.107

 

最后至为关键的位置(独门绝技,此方法在网上是无法搜到的):对于nginx环境的linux是不支持htpasswd命令的,它是属于apache下的,需要安装httpd才行,但是在nginx环境下安装,难免会出现冲突,安装nginx和apache非常复杂,没有lnmpa是不很难配置成功了。网上不管怎么搜,都是搜不到解决方案的,武汉网站建设在这里献上亲自经历的方法:在本地的apache下用htpasswd生成密码串,然后从本地生成之后复制到nginx上。或者自己写一个php代码,武汉网站建设也献上下载。

nginx环境htpasswd下载

WinRAR怎么样注册,WinRAR破解方法

WinRAR 是一款全球占有率极高的压缩软件,是我们装机必备软件,今天教大家怎么免费注册这个软件,否则这个软件只有40天的使用限制!(转起理由看最下方附)

下载WinRAR注册机,下载安装文件以及注册机,http://pan.baidu.com/s/1mghXpiS,如果你的系统没有安装winRAR的话直接选择一个版本安装即可,如果已经安装了,直接选择WinRAR注册机即可!

安装完你的winRAR软件后,双击WinRAR注册机文件启动注册机,如下图一所示!在注册用户栏位你可以手动输入你想注册的用户名,如下图二。输入完成点击“”generate“”按钮!

出现提示对话框如下图,点击确定即可!

d439b6003af33a875d659252c45c10385343b56a.jpg

生成的注册文件自动会找到winrar安装文件夹目录,点击保存即可!

注册文件导入成功提示框,点击确定按钮!完成注册!

738b4710b912c8fcdcac6b85fe039245d688211e.jpg

 

738b4710b912c8fcdcac6b85fe039245d688211e.jpg

 

  1. 现在来看看是否成功!点击任意压缩文件,点击上方菜单的-帮助–关于WinRAR!

    fcfaaf51f3deb48f64ea3c96f21f3a292cf578f3.jpg

  2. OK,注册成功,已成功注册了!

附:此篇文章是由百度转载而来,为什么要转载,是有原因。

在使用过程中,遇到一些盲点,现把自己的过程写于下面:

如果是win7的用户,再点击注册的时候,会出现获取最高权限,

当点确定以后,发现保存位置不对了。

那么这时候,将生成的文件直接保存自己能找到的任意盘符

然后找到winrar安装的根目录:如我电脑上:

562c11dfa9ec8a13e398caa8f503918fa1ecc0fc.jpg 279759ee3d6d55fb3998eb6e6f224f4a20a4dd18.jpg 1f178a82b9014a90acc3dbf5ab773912b21beefd.jpg 8d5494eef01f3a293b2c9e119b25bc315d607c0c

直接将刚才保存的文件(rarreg.key)直接复制到里面,一切就ok了。

 

 

DEDECMS织梦 真正的随机文章的调用方法

关于dedecms随机文章是老生常谈了,原本很简单的一问题,现在还是捡起来说说,供大家借鉴一下吧

大家都知道随机标签 rand,调用标签也知道怎么写:

{dede:arclist row=’1000′ pagesize=’10’ titlelen=’35’ orderby=’rand’}

[field:textlink/]

{/dede:arclist}

但是仅仅有这个,在静态页面上是不能达到真正意义上的随机的,下面就是如何设置了:

将你需要随机生成的那段代码(上面调用标签)加入到新建自定义宏中,然后使用JS调用,将JS代码插入到模板中
如下:
<script src=’/plus/mytag_js.php?aid=12&nocache=1′ language=’javascript’></script>
通过后台的JS调用生成的JS代码是没有nocache=1

为了能兼容多个版本,建议nocache=1还是加上为好,这样直接在前台需要的地方复制上面的这个js代码即可调用随机代码了。

phpcms那点事——setting_models

关于phpcms的setting_models[”]一说,网站建设麦芒在这里简单说下:

今天在做phpcms的二次开发的时候,突然遇到一个不解的问题,一客户要求将phpcms的网页模块进行二次开发,在phpcms\modules\yp\index.php文件里面就有如下的一段代码:

//列表页推荐位ID,模块配置推荐位第二个为列表页推荐位配置
$posid = intval($this->setting[‘position’][2][‘posid’]);
$siteid = SITEID;
$SEO = seo(SITEID, ”, $this->setting[‘seo_title’], $this->setting[‘seo_description’], $this->setting[‘seo_keywords’]);
//产品modelid
$product_id = $this->setting_models[73];
$buy_id = $this->setting_models[76];
$news_id = $this->setting_models[72];//这句为麦芒添加

看到如何得来”产品modelid“感觉很困惑,因为麦芒想得到”news_id”,所以才困惑不解的。

困惑点就是setting_models 里面为什么是73、76、72 ???

在数据中到处进行了查找,发现并没有任何的蛛丝马迹?难道这个setting_models里面的数字无中生有,我觉得不可能,程序中一切皆对象,不相信不存在…

编者麦芒就通过不断的var_dump()去调试,终于找到了缘由,原来$this->setting_models是一缓存数组,显然缓存是由文件缓存函数来生成的…  到目前为止,终于真相大白了

 

lnmp取消nginx目录PHP执行权限(此法亦用可多站点的安全设置,尤其dedecms)

今天在处理一dedecms的安全配置的时候,涉及了nginx配置文件的设置,当然apache就比较简单了,下面就nginx简单说下设置步骤:

首先要编辑nginx的虚拟主机配置,在fastcgi的location语句的前面按下面的内容添加:

1、单个目录去掉PHP执行权限

  1. location ~ /attachments/.*\.(php|php5)?$ {
  2. deny all;
  3. }

将attachments目录的PHP执行权限去掉。

2、多个目录去掉PHP执行权限

  1. location ~ /(attachments|upload)/.*\.(php|php5)?$ {
  2. deny all;
  3. }

将attachments、upload这二个目录的PHP执行权限去掉。

附上一个完整的虚拟主机的例子供参考:

  1. server
  2. {
  3. listen 80;
  4. server_name www.xker.com;
  5. index index.html index.htm index.php;
  6. root /home/wwwroot/bbs.vpser.net;include discuz.conf;
  7. location ~ /(attachments|upload)/.*\.(php|php5)?$ {
  8. deny all;
  9. }
  10. location ~ .*\.(php|php5)?$
  11. {
  12. fastcgi_pass unix:/tmp/php-cgi.sock;
  13. fastcgi_index index.php;
  14. include fcgi.conf;
  15. }
  16. access_log off;
  17. }

添加完执行:/usr/local/nginx/sbin/nginx -t测试配置文件,执行:/usr/local/nginx/sbin/nginx -s reload 载入配置文件使其生效。

php技术开发友情提示:注意顺序,一定要放在 “location ~ .*\.(php|php5)?$” 一行上面,不然不会生效。