虽然我有编程背景,但我是 wordpress 的新手。最近,我将一个 wordpress 网站从 justhost 共享服务器移到了 linode vps 服务器(Ubuntu 操作系统)。我做了以下步骤来实现它
- 在 vps 上设置 apache2 服务器
- 在 vps 上设置虚拟主机
在 /var/www/ftpadmin/www/ 下创建了一个目录注。创建 ftpadmin 是为了限制 ftp 访问该文件夹下的文件。这样做后,我可以制作静态 html 和 php 网站。
从各个 wordpress 网站的 justhost 服务器备份数据库和 wp-content 文件夹。
现在在 vps 上,在上面的指定位置,首先我下载最新版本的 wordpress 并解压缩文件。
在 mysql 上创建同名数据库,然后将原始数据库导入同一个数据库。
用原始文件夹中的文件夹替换了新的 wp-content 文件夹。
重新启动apache服务器。现在我可以访问主页了。
我将 wordpress url 和站点地址 url 的数据库值更正为旧位置的新值,并重新加载了数据库,这也帮助我访问了仪表板和登录页面。
我创建了一个 .htaccess 文件,如http://ahsan.vimmaniac.com/blog/enabling-wordpress-permalinks-on-ubuntu/ 中所述。
我还在 /etc/apache2/sites-available/ 的两个部分下将“AllowOveride”更改为
<Directory /> Options FollowSymLinks AllowOverride all </Directory> <Directory /var/www/ftpadmin/www/domainname> RewriteEngine On Options Indexes FollowSymLinks MultiViews AllowOverride FileInfo Order allow,deny allow from all </Directory>
再次重新启动服务 apache。
最后一点,我使用的是自定义模板,因此我有一个 header.php 和 header-sub.php 文件用于主页和导航。
现在问题来了。当我单击任何子菜单时,我得到“内部服务器错误”。
如果我删除 .htaccess 并重新加载 apache 服务器。现在单击和子菜单时出现 404 错误。
任何帮助都受到高度赞赏?我查看了各个站点以整理这些许多步骤并执行。我不知道我应该做些什么来纠正这种情况。但是当我进入仪表板-> 所有页面时,我可以找到所有存在的页面和内容。
在此先感谢法亚兹
编辑.htaccess
从评论中
添加文件:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/ (wordpress replaced with my domainname, bottom also)
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>