#php #url #laravel #virtualhost
#php #url #laravel #virtualhost
Вопрос:
У меня есть установка laravel на моем сервере /var/www/html/site/
, и я могу получить к ней доступ здесь dev.site.com
. Я хотел бы изменить URL-адрес платы site.com
, просто изменив корень моего документа для этого виртуального хоста. Итак, я указываю site.com
на /var/www/html/site/public
, и laravel выдает ошибку:
base64_decode() expects parameter 1 to be a string, array given
Это происходит только тогда, когда я захожу на веб-сайт, используя URL site.com
-адрес, и когда я меняю его обратно dev.site.com
, все снова в порядке. Я обновил URL-адрес приложения до site.com
.
Я запускаю laravel 4.2 на centos 4.5 final.
Виртуальные хосты
<VirtualHost *:80>
ServerName dev.site.com
ServerAlias dev.site.com
ServerAdmin tech@myDomain.com
DocumentRoot "/var/www/html/site/public"
<Directory /var/www/html/site/public>
AllowOverride All
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName site.com
ServerAlias site.com
ServerAdmin tech@myDomain.com
DocumentRoot "/var/www/html/site/public"
<Directory /var/www/html/site/public>
AllowOverride All
Allow from all
</Directory>
</VirtualHost>
/var/www/html/site/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php
* @param string $payload
* @return array
*
* @throws DecryptException
*/
protected function getJsonPayload($payload)
{
$payload = json_decode(base64_decode($payload), true);
7 IlluminateEncryptionEncrypter getJsonPayload
* Decrypt the given value.
*
* @param string $payload
* @return string
*/
public function decrypt($payload)
{
$payload = $this->getJsonPayload($payload);
// We'll go ahead and remove the PKCS7 padding from the encrypted value before
Просто чтобы еще раз прояснить, если я снова перейду к dev.site.com
нему, все будет в порядке.
Комментарии:
1. Как выглядит строка (или массив), которую вы пытаетесь передать для
base64_decode()
функции? Пожалуйста, включите этот код в свой вопрос.2.Вам нужно будет включить код, который вызывает
getJsonPayload
, чтобы кто-то ответил на ваш вопрос.3. Я думаю, что теперь я все понял.
4. Что-то в вашем коде жестко запрограммировано
dev.site.com
.5. Я пытался везде искать что-то жестко подключенное
dev.site.com
, но не смог его найти. Я не помню, чтобы когда-либо писалdev.site.com
где-либо.
Ответ №1:
Решается просто путем очистки моих файлов cookie….