hottea
(hottea)
#1
我已经在将 WordPress 安装到了 /srv/www/htdocs/wordpress 下,访问我的博客就需要打开 example.org/wordpress。
我想要直接通过 example.org 就能访问我的博客。根据 WordPress 的文档 Giving WordPress Its Own Directory 操作之后,打开 example.org 的确可以访问到我的博客首页了。
但是具体的文章,比如有一篇 example.org/wordpress/hello-world,变成了 example.org/hello-world,后者是不正确的地址。应该要怎么修改?
WP 有一篇文档 Moving WordPress ,但是还是
看不明白啊。求指教。
Update:已经解决了。WordPress 的那篇文档太老旧了,根本就是错误的嘛,改天去更新一下。详情参考我的文章: hottea.me/wordpress/2014/08/install-wordpress-in-opensuse/
PaleFire
(PaleFire)
#3
楼主问的是把子域名解析到子文件夹的问题吧?
之前折腾过方案还是很多的。
建立 .htaccess 是一种,但是 openSUSE 默认不会读取 .htaccess ,要改 apache 的配置,反正我是没有成功过,还要泛域名解析什么的。
另一种是可以用 URL 转发,这个直接通过域名管理可以实现,你要让文章 hello world 显示为 example.org/hello 而不是 example.org/wordpress/hello 需要使用「隐含」转发,但有的域名商可能不提供这项服务。当时遇到的问题是其他一切都好就是标签页不知怎么混乱了。标签页不显示标题而是显示网址。
据说 301 跳转也可以。最后还有一种就是弄一下 /etc/apache2/vhosts.d 这个东东,下面有个模板并带有详细的说明,可以参考一下。这两个我也没有试过。
最后我还是选择直接解压到 /srv/www/htdocs 下算了。。。反正也打大算一个 vps 开多个网站,据说最好是一个 IP 对应一个域名。当然我不是用 WordPress,用的是 typecho :-)
hottea
(hottea)
#4
.htaccess 用的是 apache2 的 rewrite 模块,openSUSE 下默认没开,要自己设置。这个 .htaccess 规则是 WordPress 生成的,但是按照他的文档改了 site adrress 之后,生成的 .htaccess 不知道对不对。
/etc/apache2/vhosts.d 这个没试过。不太了解。
直接把 wordpress 的内容放到 /srv/www/htdocs 会显得乱七八糟的啊。
hottea
(hottea)
#5
PaleFire
(PaleFire)
#6
hottea
(hottea)
#7
这个隐含转发规则要怎么写啊? I have no idea.
PaleFire
(PaleFire)
#8
不需要写的,你登陆你的域名控制中心,比如我用的这个控制中心:
打个比方我先把 xxxx.org 解析到我 vps 的 ip 上了,确认可以访问以后,我可以这样
这样就把 blog.xxxx.org 转发到 xxxx.org/blog 上去了,然后解析重启 DNS 服务器就好了,你可以通过 blog.xxxx.org 访问 xxxx.org/blog 。你在 vps 不要设置什么东西。就是不知道你的域名供应商是不是提供这项服务,据说有的不提供的。
PS:隐含转发的好处是你通过 blog.xxxx.org 访问 xxxx.org/blog 在网址的地方会显示是 blog.xxxx.org。而一般的 URL 转发则会显示 xxxx.org/blog,那就不好看了。
奇瑞艾瑞泽
(奇瑞艾瑞泽)
#9
我彻底回归纯 HTML 了……
在 Windows 里装了个 Expression Web ~
Linux 里 Blue Griffon
连 asciidoc 都懒得用了……
我堕落了…… 没有折腾动力了……
hottea
(hottea)
#10
回头看一下,namecheap 应该有提供这个服务…这也是很基础的服务啊
来自我的 Nexus 5 上的 Tapatalk
不知道,你觉得自己说了一大堆,实际上你什么都没说。我现在连你的 http 服务是 apache2 还是 nginx 做的还都不知道,你已经跟他们问上转发规则的写法了,这种信息不对称的讨论我参与不了。
hottea
(hottea)
#12
失误,我没说清楚。是 LAMP,Linux,Apache2,MariaDB 和 PHP5。
那帮不了你…apache2 我不熟,只会用默认的 ; nginx 和你的情况不一样,nginx 只需要把 localtion 的 root 绑定到那个文件夹就可以了。