curl problem or permalinks

时间:2011-02-02 作者:Niraj Chauhan

我刚刚配置了我的VPS,我使用的是Centos,一切都很好,但如果我将永久链接设置为自定义结构,然后接受主页,没有帖子出现,它会显示404页,我想这是因为我没有启用curl,但我不知道我的php在哪里。我的centos中的ini文件?

好的,我的卷曲被启用了,我检查过了phpinfo(); 这里是URLhttp://74.117.158.182/info.php

但如果我在我的wordpress中设置了永久链接,那么接受主页,所有都会给我404页,你可以在这个URL上查看http://mbas.co.in

如果我将permalink保留为默认值,则加载页面时不带任何404

我不知道是什么问题,更多的是我的帖子内容没有加载,只有帖子标题,但内容部分缺失,

我的APACHE错误日志

[2011年2月1日星期二15:22:47][注意]suEXEC机制已启用(包装器:/usr/sbin/suEXEC)
[2011年2月1日星期二15:22:47][注意]摘要:为摘要身份验证生成机密
[2011年2月1日星期二15:22:47][通知]摘要:完成
[2011年2月1日星期二15:22:47][通知]配置了Apache/2.2.3(CentOS)-恢复正常操作
[2011年2月1日星期二15:22:51][错误][客户端95.168.183.226]文件不存在:/var/www/html/web-hosting-concers for-ecommerce-business,referer:mysite。com
[2011年2月1日星期二15:23:30][错误][客户端38.101.148.126]文件不存在:/var/www/html/cpcu vs mba
[2011年2月1日星期二15:23:35][错误][客户端66.77.240.125]文件不存在:/var/www/html/can-u-see-down-for-growth-opinions-on-write-in-vote-process-in-sa

[周二,2011年2月1日15:23:43][错误][客户端38.101.148.126]文件不存在:/var/www/html/dc-area-financial-strategiator质疑缺乏对电视金融大师的监管

[2011年2月1日星期二15:24:15][错误][客户端38.101.148.126]文件不存在:/var/www/html/is-a-political-science-degree-with-a-business-admin-minor-a-good-idea-feature-jobs-with-that-combo

[2011年2月1日星期二15:26:01][错误][客户端66.249.71.225]文件不存在:/var/www/html/emba-ralph-irizarry-timbalista-de-ruben-blades

我的htaccess文件

# BEGIN W3TC Page Cache
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_USER_AGENT} (2\\.0\\ mmp|240x320|alcatel|amoi|asus|au\\-mic|audiovox|avantgo|benq|bird|blackberry|blazer|cdm|cellphone|danger|ddipocket|docomo|dopod|elaine/3\\.0|ericsson|eudoraweb|fly|haier|hiptop|hp\\.ipaq|htc|huawei|i\\-mobile|iemobile|j\\-phone|kddi|konka|kwc|kyocera/wx310k|lenovo|lg|lg/u990|lge\\ vx|midp|midp\\-2\\.0|mmef20|mmp|mobilephone|mot\\-v|motorola|netfront|newgen|newt|nintendo\\ ds|nintendo\\ wii|nitro|nokia|novarra|o2|openweb|opera\\ mobi|opera\\.mobi|palm|panasonic|pantech|pdxgw|pg|philips|phone|playstation\\ portable|portalmmm|ppc|proxinet|psp|pt|qtek|sagem|samsung|sanyo|sch|sec|sendo|sgh|sharp|sharp\\-tq\\-gx10|small|smartphone|softbank|sonyericsson|sph|symbian|symbian\\ os|symbianos|toshiba|treo|ts21i\\-10|up\\.browser|up\\.link|uts|vertu|vodafone|wap|willcome|windows\\ ce|windows\\.ce|winwap|xda|zte) [NC]
    RewriteRule .* - [E=W3TC_UA:_low]
    RewriteCond %{HTTP_USER_AGENT} (acer\\ s100|android|archos5|blackberry9500|blackberry9530|blackberry9550|cupcake|docomo\\ ht\\-03a|dream|htc\\ hero|htc\\ magic|htc_dream|htc_magic|incognito|ipad|iphone|ipod|lg\\-gw620|liquid\\ build|maemo|mot\\-mb200|mot\\-mb300|nexus\\ one|opera\\ mini|samsung\\-s8000|series60.*webkit|series60/5\\.0|sonyericssone10|sonyericssonu20|sonyericssonx10|t\\-mobile\\ mytouch\\ 3g|t\\-mobile\\ opal|tattoo|webmate|webos) [NC]
    RewriteRule .* - [E=W3TC_UA:_high]
    RewriteCond %{HTTPS} =on
    RewriteRule .* - [E=W3TC_SSL:_ssl]
    RewriteCond %{SERVER_PORT} =443
    RewriteRule .* - [E=W3TC_SSL:_ssl]
    RewriteCond %{HTTP:Accept-Encoding} gzip
    RewriteRule .* - [E=W3TC_ENC:.gzip]
    RewriteCond %{REQUEST_METHOD} !=POST
    RewriteCond %{QUERY_STRING} =""
    RewriteCond %{REQUEST_URI} \\/$
    RewriteCond %{REQUEST_URI} !(\\/wp-admin\\/|\\/xmlrpc.php|\\/wp-(app|cron|login|register|mail)\\.php|wp-.*\\.php|index\\.php) [NC,OR]
    RewriteCond %{REQUEST_URI} (wp\\-comments\\-popup\\.php|wp\\-links\\-opml\\.php|wp\\-locations\\.php) [NC]
    RewriteCond %{HTTP_COOKIE} !(comment_author|wp\\-postpass|wordpress_\\[a\\-f0\\-9\\]\\+|wordpress_logged_in) [NC]
    RewriteCond "/var/www/html/wp-content/w3tc/pgcache/$1/_index%{ENV:W3TC_UA}%{ENV:W3TC_SSL}.html%{ENV:W3TC_ENC}" -f
    RewriteRule (.*) "/wp-content/w3tc/pgcache/$1/_index%{ENV:W3TC_UA}%{ENV:W3TC_SSL}.html%{ENV:W3TC_ENC}" [L]
</IfModule>
# END W3TC Page Cache

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule ^index\\.php/?(.*)$ $1 [R] 
</IfModule>

# END WordPress
我找到的唯一解决方案是重新安装整个Centos,从零开始,并根据答案分别启用每件事,最后它成功了,我的Linux出现了一些问题,这就是为什么它不工作的原因。

4 个回复
最合适的回答,由SO网友:Ethan Seifert 整理而成

您需要添加:选项+FollowSymLinks

在大多数托管环境中,它经常启用,但并不总是启用。我们有一个默认关闭的服务器,以符合PCI标准。

SO网友:keatch

如果启用自定义永久链接,wordpress将修改您的。htaccess文件,以允许重写URL。

从抄本部分开始Using Permalinks, 在您的服务器中,必须启用模块“mod\\u rewrite”(如果您使用的是apache)和的使用。htaccess由安装日志的域访问。管理员可以禁用这两种功能,因此请先与管理员联系。

要为apache启用mod\\u rewrite,更好的方法是通过大多数linux发行版附带的a2enmod命令来启用它。

a2enmod rewrite
然后,重新加载apache服务器,以启用修改。

注意:如果无法启用mod\\u rewrite或。htaccess是permalinks的最佳解决方案,它支持“近乎完美”的版本,即前置索引。php/to-you在自定义字段中永久链接结构。

SO网友:Jo Albright

可能是APACHE AllowOveride设置不正确。

执行您的。htaccess看起来像这样吗?

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

SO网友:anu

这几乎肯定是一个重写问题-要么mod\\u rewrite没有加载,要么您的。不允许htaccess文件重写您的httpd。形态

确保正在加载mod\\u rewrite-您需要检查/etc/httpd/conf/httpd。conf并查找以下行:LoadModule rewrite_module modules/mod_rewrite.so. 确保此行没有被注释掉。

如果已创建虚拟主机,请确保允许。htaccess在节内重写-类似于“AllowOverride All”。如果您没有使用虚拟主机,请遵循httpd中的覆盖链。conf以确保可以覆盖WP所在的目录

禁用w3 total cache(并删除它添加到.htaccess的行),直到您解决了重写问题。它只是混淆了事情,而且考虑到你的网站不工作,缓存是你最不担心的。

查看apache错误日志/var/log/httpd,看看他们说了什么。

结束

相关推荐

WordPress 3.0.1 on IIS 6 Web Server PermaLink Issues

最近,我无意中发现了这个博客“用WordPress在IIS6上使用IIRF URL重写”(http://john-sheehan.com/blog/using-iirf-url-rewriting-on-iis6-with-wordpress/ ) 我在Mac OS X上开发了一个运行MAMP的WordPress站点,然后将该站点移植到MS IIS6 Windows 2003服务器环境中。转到主页一切正常,但我的所有其他页面都找不到-404。我的网站是用WordPress 3.0.1中的PermaLink