Я настроил на VPS WordPress и DNS для перенаправления доменного имени на мой сервер. Но у меня проблемы с скрытием IP сервера. Фактически, когда меня перенаправляют с моего доменного имени на сервер, URL-адрес меняется с www.example.com/wordpress
к XXXXXX/wordpress
(XXXXXX
это IP-адрес).
Поэтому я попытался изменить URL-адрес сайта в настройках для доменного имени. Однако я застрял в петле между сервером и доменным именем или им самим. В настройках поменял на http://www.example.com/wordpress
вместо того http://XXXXXX/wordpress
Вот моя конфигурация для VirtualHost: /etc/apache2/sites-available/default
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin admin@example.com
ServerName example
ServerAlias example.com *.example.com
DocumentRoot /var/www/
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
<Directory /var/www/wordpress/>
Order deny,allow
Allow from all
Satisfy any
</Directory>
</VirtualHost>
И вот мой .htaccess
/var/www/wordpress/.htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
И в моем журнале мы видим, что у меня есть внутренние перенаправления
strip per-dir prefix: /var/www/wordpress/index.html -> index.html
applying pattern '^index\\.php$' to uri 'index.html'
strip per-dir prefix: /var/www/wordpress/index.html -> index.html
applying pattern '.' to uri 'index.html'
rewrite 'index.html' -> '/wordpress/index.php'
trying to replace prefix /var/www/wordpress/ with /wordpress/
internal redirect with /wordpress/index.php [INTERNAL REDIRECT]
strip per-dir prefix: /var/www/wordpress/index.cgi -> index.cgi
applying pattern '^index\\.php$' to uri 'index.cgi'
strip per-dir prefix: /var/www/wordpress/index.cgi -> index.cgi
applying pattern '.' to uri 'index.cgi'
rewrite 'index.cgi' -> '/wordpress/index.php'
trying to replace prefix /var/www/wordpress/ with /wordpress/
internal redirect with /wordpress/index.php [INTERNAL REDIRECT]
strip per-dir prefix: /var/www/wordpress/index.pl -> index.pl
applying pattern '^index\\.php$' to uri 'index.pl'
strip per-dir prefix: /var/www/wordpress/index.pl -> index.pl
applying pattern '.' to uri 'index.pl'
rewrite 'index.pl' -> '/wordpress/index.php'
trying to replace prefix /var/www/wordpress/ with /wordpress/
internal redirect with /wordpress/index.php [INTERNAL REDIRECT]
Любые предложения приветствуются!
Я нашел решение, я позвонил в службу технической поддержки своего DNS-провайдера, и мы обнаружили, что я неправильно его настроил. Чтобы помочь людям, у которых может быть такая же проблема, вот она.
Мой DNS-провайдер - 1 и 1, и я перенаправил http на свой ip, и это было неправильно. Правильный способ - установить доменное имя как веб-компонент и установить в параметре DNS запись A для IP-адреса сервера.
Я сделал эту ошибку, потому что подумал, что веб-компонент предназначен для веб-сайта, созданного конструктором веб-сайтов 1 & 1.
Спасибо за ответ user378702
Вы можете изменить DocumentRoot на / var / www / wordpress /
Edited:DocumentRoot /var/www/wordpress/