一级域名绑定二级目录伪静态 和 二级目录wordpress伪静态规则写法

这LNMP下,原wordpress伪静态的写法:

location / {
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}

if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}

if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
如果需要一级域名绑定到二级目录,如www.7966.org 绑定到 www.7966.org/blog这个目录,

调用上面写法就出问题了,必须写一个新的伪静态才行,很简单:
location / {
if (-f $request_filename/二级目录/index.html){
rewrite (.*) $1/二级目录/index.html break;
}
if (-f $request_filename/二级目录/index.php){
rewrite (.*) $1/二级目录/index.php;
}
if (!-f $request_filename){
rewrite (.*) /二级目录/index.php;
}
}
当出现报错,估计是rewrite写得不规范,例如:nginx: [emerg] invalid number of arguments in "rewrite" ...

必须看看上面的规则是否有空格的地方没有空格这个必须注意!

 如果一级目录需要放其他东西,而二级目录放博客的话,实现wordpress伪静态,其实也很简单的

例如:www.7966.org是放置CMS,而二级目录blog放博客,且要这个博客实现伪静态的话,

调用原来的文件,会出现404的,那么需要重新建一个wordpress2.conf,内容如下
location /blog/ {
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}

if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}

if (!-f $request_filename){
rewrite (.*) /blog/index.php;
}
}
这样就基本搞定了,不过不要忘记把/usr/local/nginx/conf/vhost

下面www.7966.org.conf 里面的伪静态修改为wordpress2.conf

版权所有,作者:老钟,如若转载,请注明出处:https://www.laoz.net/306.html

(1)
老钟
上一篇 2012 年 11 月 29 日 下午 6:56
下一篇 2013 年 08 月 02 日 下午 6:05

相关推荐

  • linux定时任务

    例子   每天早上6点 0 6 * * * echo "Good morning." >> /tmp/test.txt //注意单纯echo,从屏幕上看不到任何输出,因为cron把任何输出都email到root的信箱了。 每两个小时 0 */2 * * * echo "Have a bre…

    vps教程 2011 年 08 月 29 日
  • 修改linux文件夹及其子文件夹、文件的权限

    入手了vps,需要很多linux的命令,遇到不懂的,网速搜一下,并且总结出来 有个文件夹, 里边有好多子文件夹和文件,chmod 777 foldername 得重复输入多次, 因为chmod一次只能赋给当前文件夹权限,不能传递到子文件…

    vps教程 2011 年 07 月 31 日
  • BURST倒闭了,把网站都迁移到Linode

      前几天收到邮件,burst说7月25停止所有服务,我还以为是我的服务器到期了,看了其他一些VPS大牛的文章,才知道原来burst倒闭了,其实VPS还是可以继续使用的,因为他的VPS卖给了hostwinds ,我的vps是7.25到…

    2014 年 06 月 28 日
  • 目前我在工作中常用的linux命令

    top   看cpu  内存  程序是否运行 c   显示命令路径 ctrl + c    终止 q   终止 空格  自动刷新 pwd    当前所在目录 ll   查看所有文件   (文件权限  所有者) ll * | grep  aa    查看aa文件 ls    查看所有文件…

    vps教程 2011 年 08 月 17 日
  • Linux中 常用命令 和 进程管理

    Vim: 文本编辑器 vim   文件名 vim  + n(行号)  如  vim  + 3  /etc/passwd 光标在第三行; + /word       光标在有word的行首; Vim主要有三种模式: 命令,输入,末行这三种模式 命令模式 —>  输入模式 1)i…

    vps教程 2011 年 08 月 11 日
  • Nginx服务器安装SSL后全站http跳转https

     网上很多教程关于如何做全站的http转https,我这里只讲述nginx服务器的跳转方法之前提到过阿里云申请的SSL如何部署到服务器:lnmp安装阿里云免费SSL,出现welcome to nginx页面,提示403错误解决办法这里主要讲述…

    vps教程 2018 年 04 月 13 日
  • CentOS7修改SSH端口

    一、修改ssh配置文件sshd_config [root@bogon ~]# vi /etc/ssh/sshd_config 二、防火墙放行 [root@bogon ~]# firewall-cmd --zone=public --add-port=22345/tcp --permanent [root@bogon ~]# firewall-cmd --reload…

    2020 年 05 月 16 日
  • Linux 删除单个或多个文件

    Linux操作 Linux常用命令   rm :linux下的删除指令 rm  filename 删除名为filename 的文件 rm -rf /var/log/httpd/access 将会删除/var/log/httpd/access目录以及其下所有文件、文件夹

    vps教程 2011 年 07 月 31 日
  • linux安装jdk出现java/lang/NoClassDefFoundError: java/lang/Object错误的解决方案

    出现这个问题,是通过这篇文章解决的: http://www.cnblogs.com/chenguangyu/archive/2009/11/06/1597706.html 记得rt.pack 和 tools.pack 这两个都要处理好,都要 转换成  .jar  的形式 rt.pack 是在jre/lib 下面…

    vps教程 2011 年 11 月 25 日
  • 解决lnmp 1.2,lnmp 1.3无法远程连接数据库

    安装了lnmp 1.2之后的版本,发现远程连接mysql总是失败,原本以为是设置的问题,后来才发现原来是lnmp中iptables的规则问题 首先先要确定自己的设置是没有问题的,访问数据库的用户使用的是%权限 如果设置没问题,…

    vps教程 2016 年 08 月 18 日